Hacía tiempo que no utilizaba el comando screen para ir dejando las aplicaciones en segundo plano y recuperarlas para ir controlando su ejecución.
¿cuando recomiendo usar screen? pues básicamente cuando queremos salir del terminal dejando alguna tarea en segundo plano. Una vez vuelver ha entrar a la terminal de linux puedes recuperar esa terminal y ver exactamente el estado de la tarea.
Para procesos que quieras lanzar en segundo plano, lógicamente también tienes “&” y comandos tipo: bg, fg o jobs, pero considero que screen te permite tener una flexibilidad que los comandos anteriores no te dejan.
Instalación
Pues para gustos colores pero generalmente:
sudo apt-get install screen
Utilización
Básicamente los comando fundamentales son:
- screen: Te abre una sesión nueva para trabajar.
- screen -S nombre_session: Te abre una sesión nueva para trabajar con nombre_session
- screen -r: Restaura la última sesión abierta o si solamente hay una sesión en background
- screen -r nombre_session: Restaura nombre_session
- screen -d nombre_session: Desconecta la sesión llamada nombre_session. Necesario si perdemos la conexión del terminal.
- screen -rx nombre_session: Deja compartir la sesión con varios terminales
- screen -ls: Lista todas las sesiones abiertas en backgroud y su estado (Attachadas/Des-attachadas).
Por otro lado tenemos las combinaciones de teclas que nos dejan gestionar las sesiones:
- Crtl + a + d: Des-attacha la sesión abierta que esta corriendo para posteriormente poder ser rescatada.
Secuencia de utilización de screen
Con estos datos básicos ya podríamos gestionar varias sessiones y trabajar con diferentes aplicaciones en backgroud. La secuencia de trabajo sería:
- Abrir una sesión nueva mediante: screen -S mi_sesion
- Ejecutar la tarea a ejecutar (ejemplo): top
- Salir de la session y dejarla en background: crtl+a+d
- Seguir trabajando con otras aplicaciones.
- Revisar las sesiones que tienes abiertas: screen -ls
- Rescatar la sesión que hemos abierto anteriormente: screen -r mi_sesion
Con estos pasos ya nos dejaría establecer un proceso de trabajo corriente, aparte que puedes salir del terminal y el proceso quedaría corriendo sin problemas y recuperarlo cuando volvamos a entrar.
Referencias
Puedes encontrar mas información en:
- Ubuntuusers – Screen (Está en aleman pero se puede traducir con el propio navegador.
- Cómo utilizar Screen de Linux para una gestión eficaz del terminal en 2024
Enjoy!!!