Screen o GNU Screen es un multiplexor terminal con el cual podemos iniciar una sesión de pantalla y luego abrir otras ventanas llamadas terminales virtuales en esa misma sesión sin que nada se vea afectado. Esto permite que todos los procesos ejecutados en la pantalla seguirán su trabajo de ejecución aún si desconectamos la sesión activa.
Thank you for reading this post, don't forget to subscribe!
Permite también obtener una lista de las ventanas activas, activar o desactivar el registro de salida, copiar y pegar texto en las ventanas, mostrar el historial, cambiar entre ventanas, etcétera.
Como en anteriores post, si consideras que no tienes necesidad de ello, aquí lo dejo en Que necesidad hay?
Instalación
Por defecto, Screen viene instalado en la mayoría de distribuciones, pero si este no es el caso simplemente podemos instalarlo:
- En Ubuntu o Debian
$ sudo apt install screen
- En Red Hat, Fedora o CentOS
$ sudo yum install screen
Personalizando screen
Puedes configurar tu sesión de screen a través del archivo .screenrc. Las opciones de personalización están disponibles en el manual
Usando screen
Para iniciar Screen simplemente ejecutar en el CLI “screen”. Esto se encarga de abrir una sesión de pantalla, crear una nueva ventana y activará un shell en esa ventana nueva.
$ screen
Recordar que siempre es posible ejecutar man
$ man screen
Desplegará varias pantallas del manual, con ayudas, usos, ejemplo, etc
Para acceder a los comandos disponibles vamos a ejecutar lo siguiente:
$ Ctrl + a? (despliega una pantalla de ayuda) $ Ctrl a?
Si vamos a crear una nueva ventana con el tipo de shell Ctrl + a c, (Ctrl ac) a esta se le asignará el primer número disponible en un rango del 0 al 9, algunos de los comandos disponibles son:
$ Ctrl + ac
$ Ctrl + a "
$ Ctrl +a n
$ Ctrl + a + 0
$ Ctrl + a + c
$ Ctrl + aS
$ Ctrl + a |
$ Ctrl +
$ Ctrl + a Ctrl + a
$ Ctrl + a Q
Desconexión (detach)
Para desconectarnos de la sesión actual de Screen ejecutaremos Ctrl + a d , y una forma para un mejor control es identificar las sesiones -S <nombre de sesión>:
$ screen -S sesion1
Para ver todas las sesiones activas, o su estado, ejecutamos:
$ screen -ls
Podemos retomar (reattach) sesión por su ID:
$ screen -r ID
Al pulsar Enter accederemos a esa sesión en segundo plano, así funciona Screen en Linux para un trabajo adecuado y seguro de cada sesión.