screen: Gestión de sesiones de terminal
Mediante el comando screen se pueden tanto gestionar las sesiones que hay abiertas realizando acciones como compartirlas para realizar un trabajo colaborativo o enseñar como operar cierto sistema.
Si se ejecuta el comando screen sin parámetros se abre una sessión, en ella se puede trabajar normalmente. Si lo que se desea es dejarla en segundo plano para volver a ella más adelante (si estamos conectados por ssh, incluso desconectando) se debería presionas la combinación: Control-A-D (Manteniendo pulsada la tecla control presionar A y D, una después de otra)
Con esta combinación volveremos a la shell original con este mensaje:
[detached] jordi@curullons ~ $
Para listar las sessiones que hay abiertas se puede hacer mediante el comando screen -ls
jordi@curullons ~ $ screen -ls There are screens on: 8559.pts-0.curullons (Detached) 8659.pts-2.curullons (Attached) 2 Sockets in /var/run/screen/S-jordi.
Pudiendo conectar a ella mediante el comando screen -x. Por ejemplo:
$ screen -x 8659.pts-2.curullons
Evidentemente, este nombre de sesión no es ni amigable ni descriptivo. Mediante la opción -S podemos definir un nombre de sesión mediante el cual es possible atacharse a la sessión. Por ejemplo:
$ screen -S systemadmin.es
En el listado aparecería como:
$ screen -ls
There are screens on:
8559.pts-0.curullons (Detached)
8735.systemadmin.es (Attached)
8694.pts-0.curullons (Detached)
8659.pts-2.curullons (Attached)
4 Sockets in /var/run/screen/S-jordi.
Pero solo usando el texto “systemadmin.es” es possible conectarse a la sessión mediante el parámetro -x:
$ screen -x systemadmin.es
Relacionados
Imprimir
17. December 2009 at 10:00 pm :
Una de las caracteristicas que hacen poderoso a screen es que te permite tener varias ventanas dentro de una misma sesion, y una(s) aplicacion(es) corriendo en cada ventana, estas son algunas combinaciones de teclas para el manejo de ventanas:
ctrl + a + c Crea una ventana nueva
ctrl + a + p Posicionarse en la ventana anterior
ctrl + a + n Posicionarse en la ventana siguiente
ctrl + a + A Renombrar la ventana actual
ctrl + a + w Listar todas las ventanas
ctrl + a + [0-9] Posicionarse en la ventana numero 0,1,2,…,8,9 (usar solo un numero)
Ademas, screen te permite configurar opciones mediante el archivo .screenrc que debes tener en tu home de usuario. Mi .screenrc es como este:
caption always “%{+b rk}%H%{gk} |%C%a %{yk}%D %d/%m/%Y | %{dk}%-=load: %l %{wk}”
hardstatus alwayslastline “%{= kw}%-w%{= BW}%n %t%{-}%+w %{+b}”
startup_message off
vbell off
Aunque se ve complicada la sintaxis, este produce una agradable e informativa barra de status en la parte baja de mi sesion.
Espero les guste/ayude la info, yo sin screen no podria administrar nada remotamente.
22. December 2009 at 10:51 am :
Muchas gracias, muy útil!
Nunca lo he usado para varias ventanas, simplemente abro otra terminal. Tendré que probar a ver si me acostumbro
7. January 2010 at 12:00 pm :
Tu artículo comenta como crear una sesión con un nombre, pero …
y si yá tenemos la sesión activa y queremos renombrarla??
# screen -ls
There are screens on:
6596.pts-20.apevia (07/01/10 11:06:39) (Attached)
5273.tty2.apevia (02/01/10 13:32:20) (Attached)
Es decir, ¿como renombro ahora la 5723 y la 6596 sin cargarmelas ???
gracias, un saludo,
8. January 2010 at 8:08 am :
Hola,
Pues la verdad es que no lo se: nunca he renombrado una sesión. He mirado el man pero no lo he visto. Para estas cosas es mejor que preguntes en el foro que hay gente que seguro que lo sabe.
saludos!