El comando screen es una herramienta imprescindible para cualquier administrador de sistemas o desarrollador que trabaje en entornos GNU/Linux. Este comando permite gestionar sesiones de terminal independientes, facilitando la continuidad de tareas incluso tras cerrar la sesión SSH o el terminal. En este artículo, exploraremos el uso de screen, su sintaxis básica y ejemplos prácticos con sus opciones más útiles.
¿Qué es y para qué sirve screen?
screen es un multiplexor de terminal que permite:
- Crear y gestionar múltiples sesiones virtuales en una única ventana de terminal.
- Mantener tareas en ejecución en segundo plano incluso si se pierde la conexión.
- Reconectarse a sesiones previas en cualquier momento.
Es especialmente útil en escenarios como:
- Ejecución de procesos largos, como compilaciones o descargas.
- Administración remota a través de SSH.
- Dividir un único terminal en varias sesiones para una gestión más eficiente.
Sintaxis básica
La sintaxis básica de screen es:
screen [opciones] [comando]Algunos comandos importantes dentro de screen (tras haber iniciado una sesión):
Ctrl-a d: Desvincula la sesión (detach) sin cerrarla.screen -r: Reconecta una sesión desvinculada.Ctrl-a c: Crea una nueva ventana.Ctrl-a n: Cambia a la siguiente ventana.Ctrl-a p: Cambia a la ventana anterior.Ctrl-a ?: Muestra la ayuda de teclas.
Opciones útiles
-S nombre: Asigna un nombre a la sesión.-d -m: Inicia una sesión en segundo plano.-r: Reconecta una sesión desvinculada.-x: Reconecta a una sesión ya adjunta (modo compartido).
Ejemplos de uso
Crear una nueva sesión
Para iniciar una nueva sesión de screen simplemente ejecuta:
screenEsto abrirá una nueva sesión donde puedes trabajar como lo harías normalmente.
Nombrar una sesión
Al crear una sesión, puedes asignarle un nombre para identificarla fácilmente:
screen -S t3rr0rz0n3_sesionListar sesiones activas
Si tienes varias sesiones activas, puedes listarlas con:
screen -lsEsto mostrará algo como:
There are screens on:
12345.t3rr0rz0n3_sesion (Detached)
67890.otra_sesion (Detached)
2 Sockets in /run/screens/S-t3rr0rz0n3.Reconectar a una sesión desvinculada
Para reconectar una sesión que fue desvinculada:
screen -r 12345O usando el nombre:
screen -r t3rr0rz0n3_sesionEjecutar un comando dentro de screen
Puedes ejecutar un comando específico en una nueva sesión de screen:
screen -S backup -d -m rsync -av /home/t3rr0rz0n3 /backupEsto creará una sesión llamada "backup" que ejecutará el comando rsync.
Dividir la pantalla
Puedes dividir el terminal horizontal o verticalmente:
Dividir verticalmente:
Ctrl-a |Dividir horizontalmente:
Ctrl-a SLuego mueve el cursor entre los paneles con:
Ctrl-a TabConclusión
El comando screen es una herramienta versátil que mejora significativamente la productividad en GNU/Linux, especialmente para quienes trabajan en entornos remotos o necesitan mantener procesos en ejecución continua. Conocer y dominar screen te permitirá gestionar tus sesiones de terminal de manera más eficiente y confiable.
Comentarios