Este comando permite gestionar sesiones de terminal independientes, facilitando la continuidad de tareas incluso tras cerrar la sesión SSH o el terminal.


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:

screen

Esto 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_sesion

Listar sesiones activas

Si tienes varias sesiones activas, puedes listarlas con:

screen -ls

Esto 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 12345

O usando el nombre:

screen -r t3rr0rz0n3_sesion

Ejecutar 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 /backup

Esto 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 S

Luego mueve el cursor entre los paneles con:

Ctrl-a Tab

Conclusió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.

Haz que cada palabra cuente: tu donación nos inspira a seguir creando contenido. Accede al apartado de Donación para hacer tu aportación