GNU/Linux >> Tutoriales Linux >  >> Linux

Eternal Terminal:un shell remoto que se vuelve a conectar automáticamente sin interrumpir la sesión

Terminal eterna (ET) es un shell remoto que se vuelve a conectar automáticamente sin interrumpir la sesión. A diferencia de la sesión SSH normal, la sesión ET sobrevivirá incluso después de las interrupciones de la red o los cambios de IP. Tenga en cuenta que ET no es un emulador de terminal, es solo un shell remoto. ET se hace principalmente para cambios de IP. Eso significa que incluso si se cambia la dirección IP de su host remoto, Eternal Terminal lo mantendrá conectado con el sistema remoto.

Otra característica notable de ET es que podemos ejecutar tmux o pantalla dentro de una sesión ET. ET admite el modo de control tmux que le permite tener barras de desplazamiento, pestañas y ventanas del sistema operativo. Aquí es donde ET se distingue de otras aplicaciones similares como Mosh (Una alternativa popular a SSH). Aunque Mosh ofrece la misma funcionalidad que ET, no admite el modo de control de desplazamiento ni tmux. En pocas palabras, ¡ET es una terminal remota para los ocupados e impacientes!

Instalar terminal eterna en Linux

Debe instalar ET en los sistemas Servidor y Cliente.

ET está disponible en AUR , por lo que lo instala en sistemas basados ​​en Arch utilizando cualquier programa auxiliar de AUR.

Usando Yay :

$ yay -S eternalterminal

ET tiene un PPA oficial para usuarios de Ubuntu. Si está usando Ubuntu y derivados, ejecute los siguientes comandos uno por uno para instalar ET.

$ sudo add-apt-repository ppa:jgmath2000/et
$ sudo apt-get update
$ sudo apt-get install et

También se puede instalar usando Linuxbrew administrador de paquetes en sistemas Linux y Mac OS X.

$ brew install MisterTea/et/et

Para otras distribuciones de Linux, debe compilarlo e instalarlo manualmente.

Primero instale las siguientes dependencias.

  • libboost-dev
  • libsodium-dev
  • libncurses5-dev
  • libprotobuf-dev
  • compilador protobuf
  • hacer
  • libgoogle-glog-dev
  • libgflags-dev
  • descomprimir
  • wget

Después de instalar las dependencias, compile e instale ET como se muestra a continuación.

$ wget https://github.com/MisterTea/EternalTCP/archive/master.zip
$ unzip master.zip
$ cd EternalTCP-master
$ mkdir build
$ cd build
$ cmake ../
$ make
$ sudo make install

Uso de terminal eterna

Tenga en cuenta que debe instalar ET en el servidor y el sistema cliente . De forma predeterminada, ET usa el puerto 2022 . Si está detrás de un firewall o enrutador, debe abrir este puerto. ET usa ssh para el protocolo de enlace y el cifrado, así que asegúrese de poder ingresar a la máquina desde el cliente.

El comando para conectarse a su cliente es similar a sh. Para conectarse con su sistema cliente, simplemente ejecute:

et [email protected]

Ejemplo:

$ et [email protected]

Dónde, sk y 192.168.43.246 son el nombre de usuario y la dirección IP del sistema cliente. Introduzca el nombre de usuario del sistema remoto para acceder a él.

Terminal Eterna en acción

Ahora, puede usar el cliente remoto desde su sistema local. Para verificar si se vuelve a conectar automáticamente después de una interrupción de la red, desconecte el cable de red y vuelva a conectarlo o cambie la dirección IP de su cliente. Verás que la conexión sigue activa. A diferencia de la sesión SSH, no tiene que cancelar la sesión y volver a conectarse después de una interrupción de la red. ET te mantiene conectado siempre.


Linux
  1. ¿La diferencia exacta entre un 'terminal', un 'shell', un 'tty' y una 'consola'?

  2. ¿La diferencia entre un comando incorporado y uno que no lo es?

  3. ¿Archivar historial sin salir de Shell?

  4. ¿La utilidad del comando :en las secuencias de comandos de Shell, dado que explícitamente no hace nada?

  5. Obtener el tamaño de un archivo remoto desde la terminal?

¿Qué es el Shell en Linux?

Reptyr:mueva un proceso en ejecución de una terminal a otra sin cerrarlo

8 formas de obtener ayuda en el shell de Linux

¿Cómo determinar la codificación de caracteres que usa una terminal en un programa C/c++?

¿Cuál es la diferencia entre una consola, una terminal y un shell?

¿Terminal que admite el código de escape en cursiva ANSI?