LINUX

Cómo usar el comando de pantalla de Linux para SSH remoto

Cuando usa el comando ssh, solo le proporciona una pantalla (terminal). Si pierde esa pantalla, pierde todo lo que estaba haciendo en la computadora remota. A veces sucede cuando un error de red interrumpe la conexión ssh y pierde lo que estaba haciendo y tiene que volver a conectar el servidor remoto. Eso puede ser muy malo si estuvieras en medio de algo importante. Por ejemplo, si desea hacer tres cosas a la vez, como ‘vi httpd.conf’, ‘tail -f / var / log / messages’ y ‘service httpd reload’, debe abrir tres sesiones ssh separadas.

La utilidad de pantalla GNU es un multiplexor de terminales. Si usted es un administrador de sistemas que trabaja en servidores remotos, la pantalla es una gran herramienta para administrar una computadora remota con solo una interfaz de línea de comandos disponible. Le permite desconectarse de él y luego volver a conectarse a esa misma sesión de pantalla más tarde.

Está instalado de forma predeterminada en Ubuntu, para el sistema basado en RHEL, puede instalar la pantalla con la ayuda del comando yum

# yum install screen

Para usar la pantalla, simplemente escriba el siguiente comando:

$ screen

Es posible que vea un mensaje de bienvenida si está allí, y luego vea un indicador de bash regular en la ventana. Para controlar la pantalla, presione el Ctrl+a combinación de teclas, seguida de otra pulsación de tecla.

Por ejemplo, Ctrl+a seguido por ? (señalado como Ctrl + a,?) muestra la pantalla de ayuda.

Aquí hay algunos comandos y teclas de control que puede usar para operar la pantalla.

Teclas de control de pantalla

$ screen -ls
There is a screen on:
7089.pts-1.server10 (Attached)
1 Socket in /var/run/screen/S-francois.

Change window title
$ Ctrl+a, a
Set window's title to: My Server10

Create a new window
$ Ctrl+a, c

Show active window titles
$ Ctrl+a, "
Num Name Flags
0 My Server Up/down arrows change windows
1 bash

Detach screen from terminal

$ Ctrl+a, d

La sesión de pantalla que se muestra arriba resultó en la creación de dos ventanas (cada una con un shell bash). Puede crear tantos como desee y nombrarlos como desee. Además, en lugar de desconectarse de la sesión de pantalla, podría haberla cerrado saliendo del shell en cada ventana abierta (escriba exit o Ctrl + d).

Reconectarse a una sesión de pantalla

Cuando se desconecta la sesión de pantalla, vuelve al shell que se abrió cuando inició sesión por primera vez en el servidor. Puede volver a esa pantalla más tarde (incluso después de cerrar la sesión y desconectarse del servidor). Para volver a conectarse cuando solo se está ejecutando una pantalla, escriba lo siguiente:

$ screen -r

Si hay varias sesiones de pantalla en ejecución, screen -r no funcionará. Por ejemplo, esto muestra lo que sucede cuando se ejecutan dos sesiones de pantalla separadas:

$ screen -r
There are several suitable screens on:
2242.pts-4.server10 (Detached)
3354.pts-4.server10 (Detached)

Type "screen [-d] -r [pid.]tty.host" to resume one of them.

As the output suggests, you could identify the screen session and select which screen you want to connect to:

$ screen -r 2242.pts-4.server10

Nombrar sesiones de pantalla

En lugar de utilizar los nombres predeterminados, puede crear nombres más descriptivos para sus sesiones de pantalla cuando inicia la pantalla.

Por ejemplo:

$ screen -S testsession
$ screen -ls
There is a screen on:
26523.testsession (Attached)

Compartir sesiones de pantalla

Esto es algo muy importante para los administradores de sistemas. El comando de pantalla también permite compartir pantallas. Esta función es excelente para el soporte técnico porque cada persona conectada a la sesión puede escribir y ver la sesión actual. Crear una pantalla con nombre, como en la sección anterior, lo hace más fácil. Luego, otra persona en una computadora diferente puede enviar ssh al servidor (usando el mismo nombre de usuario) y escribir lo siguiente:

$ screen -x testsession

Al igual que con screen -r, si solo se está ejecutando una pantalla, no es necesario que especifique a qué pantalla se está conectando:

$ screen -x

¿Qué herramienta utiliza para la conexión remota que no sea el comando de pantalla? Por favor deje sus comentarios

Leer también:

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar