
Ya aprendimos a usarlo Pantalla GNU para gestionar múltiples sesiones de terminal. Hoy vemos otra popular utilidad de línea de comandos llamada «Tmux»utilizado para administrar sesiones de terminal. Esta guía explica qué es Tmux y cómo usar el comando Tmux con ejemplos en Linux.
1. ¿Qué es Tmux?
Similar a GNU Screen, Tmux también es un multiplexor de terminal que nos permite crear una serie de sesiones de terminal y ejecutar más de un programa o proceso al mismo tiempo en una sola ventana de terminal.
Tmux es un programa multiplataforma, de código abierto y gratuito que admite Linux, OpenBSD, FreeBSD, NetBSD y Mac OS X.
2. Instale Tmux en Linux
Tmux está disponible en los repositorios oficiales de la mayoría de las distribuciones de Linux.
En Arch Linux y sus variantes como EndeavorOS y Manjaro Linux, ejecute el siguiente comando para instalarlo.
$ sudo pacman -S tmux
En Debian, Ubuntu, Linux Mint:
$ sudo apt-get install tmux
En Fedora, RHEL, CentOS, AlmaLinux, Rocky Linux:
$ sudo dnf install tmux
O,
$ sudo yum install tmux
En SUSE / openSUSE:
$ sudo zypper install tmux
Bueno, acabamos de instalar Tmux. Sigamos adelante y veamos algunos ejemplos para aprender a usar Tmux.
3. Uso de comandos de Tmux con ejemplos
La asociación de prefijo estándar para todos los comandos en Tmux es Ctrl+b
. Solo tenga en cuenta este atajo de teclado cuando use Tmux.
Nota: El prefijo estándar para todos pantalla Los comandos son Ctrl + a.
3.1. Crear sesiones de Tmux
Para crear una nueva sesión de Tmux y adjuntarla, ejecute el siguiente comando desde la terminal:
$ tmux
O,
$ tmux new
Una vez que esté en la sesión de Tmux, verá un barra verde debajo como se muestra en la captura de pantalla a continuación.
Es muy conveniente comprobar si estás o no en una sesión de Tmux.
3.2. Desconexión de sesiones de Tmux
Para desconectarse de una sesión actual de Tmux, simplemente presione Ctrl+b
y d
. No es necesario que presione esta combinación de teclas al mismo tiempo. Primera prensa "Ctrl+b"
y luego presione "d"
.
Una vez que se desconecte de una sesión, verá un resultado como el que se muestra a continuación.
[detached (from session 0)]
3.3. Crear sesiones con nombre
Al usar varias sesiones, puede confundirse acerca de qué programas se están ejecutando en qué sesiones. En tales casos, simplemente puede crear sesiones con nombre.
Por ejemplo, si desea realizar algunas actividades relacionadas con el servidor web en una sesión, simplemente cree la sesión Tmux con un nombre personalizado, por ejemplo «Servidor web» (o cualquier nombre de su elección).
$ tmux new -s webserver
Aquí está la nueva sesión de Tmux nombrada.

Como puede ver en la captura de pantalla anterior, el nombre de la sesión de Tmux es Servidor web. De esta manera, puede ver fácilmente qué programa se está ejecutando en qué sesión.
Para bajar de peso, solo presione Ctrl+b
y d
.
3.4. Lista de sesiones de Tmux
Para ver la lista de sesiones abiertas de Tmux, haga lo siguiente:
$ tmux ls
Salida de muestra:

Como puede ver, tengo dos sesiones de Tmux abiertas.
3.5. Crea sesiones separadas
A veces, es posible que desee crear una sesión y no adjuntarla automáticamente.
Cómo crear una nueva sesión desconectada llamada «Ostechnix», Correr:
$ tmux new -s ostechnix -d
El comando anterior crea una nueva sesión de Tmux llamada «ostechnix» pero no la agrega.
Puede comprobar que la sesión se creó con tmux ls
Mando:

3.6. Adjuntar a sesiones de Tmux
Puede agregar a la última sesión creada ejecutando este comando:
$ tmux attach
O,
$ tmux a
Para adjuntar a una sesión con nombre específico, por ejemplo, «ostechnix», ejecute:
$ tmux attach -t ostechnix
O corto:
$ tmux a -t ostechnix
3.7. Matar sesiones de Tmux
Cuando haya terminado y ya no necesite una sesión de Tmux, siempre puede finalizarla con el comando:
$ tmux kill-session -t ostechnix
Para matar cuando está conectado, presione Ctrl+b
y x
. Golpear "y"
para finalizar la sesión.
Puedes comprobar si la sesión está cerrada con tmux ls
Mando.
Para finalizar el servidor Tmux junto con todas las sesiones de Tmux, haga lo siguiente:
$ tmux kill-server
¡Peligro! Esto terminará todas las sesiones de Tmux, incluso si los trabajos en ejecución dentro de las sesiones se están ejecutando sin previo aviso.
Si no se estaban ejecutando sesiones de Tmux, verá el siguiente resultado:
$ tmux ls no server running on /tmp/tmux-1000/default
3.8. Compartir ventana de sesión de Tmux
Tmux ofrece la opción de dividir una sola ventana de sesión de Tmux en varias ventanas más pequeñas llamadas. para dividir Ventana tmux.
De esta forma podemos ejecutar diferentes programas en cada área e interactuar con todos ellos al mismo tiempo.
Cada ventana se puede cambiar de tamaño, mover y cerrar sin afectar a las otras ventanas. Podemos dividir una ventana de Tmux horizontal o verticalmente, o ambas al mismo tiempo.
3.8.1. Divide las rodajas horizontalmente
Para dividir un área horizontalmente, presione Ctrl+b
y "
(comillas simples).

Utilice el mismo método abreviado de teclado para dividir aún más las ventanas.
3.8.2. Ventana dividida verticalmente
Para dividir un área verticalmente, presione Ctrl+b
y %
.

3.8.3. Ventana dividida horizontal y verticalmente
También podemos dividir una rebanada horizontal y verticalmente al mismo tiempo. Eche un vistazo a la captura de pantalla a continuación.

Primero hice una división horizontal haciendo. han presionado Ctrl+b
"
y luego dividir la ventana inferior verticalmente presionando Ctrl+b
%
.
Como puede ver en la captura de pantalla anterior, estoy ejecutando tres programas diferentes en cada área.
3.8.4. Cambiar entre ventanas
Para cambiar entre las ventanas, presione Ctrl + b y Teclas de flecha (izquierda, derecha, arriba, abajo).
3.8.5. Enviar comandos a todas las ventanas
En el ejemplo anterior, estamos ejecutando tres comandos diferentes en cada área. Sin embargo, también es posible enviar los mismos comandos a todas las ventanas al mismo tiempo.
Para hacer esto, presione Ctrl+b
e ingrese el siguiente comando y presione ENTER
:
:setw synchronize-panes
Ahora ingrese cualquier comando en cualquier ventana. Verá aparecer el mismo comando en todas las ventanas.
3.8.6. Intercambiar ventanas
Para intercambiar ventanas, presione Ctrl+b
y o
.
3.8.7. Mostrar números de ventana
prensa Ctrl+b
y q
Mostrar números de ventana.
3.8.9. Matar rebanadas
Para cerrar un área, solo ingrese exit
y ENTER
Clave. Alternativamente, presione Ctrl+b
y x
. Verá un mensaje de confirmación. Solo presione "y"
para cerrar la ventana.

4. Amplíe y reduzca la ventana de Tmux
Podemos hacer zoom en las ventanas de Tmux para que se ajusten al tamaño completo de la ventana de terminal actual para una mejor visibilidad del texto y para mostrar más contenido.
Es útil cuando necesita más espacio o cuando está concentrado en una tarea específica. Después de completar esta tarea, puede alejar (quitar el zoom) de la ventana de Tmux a su posición normal. Más detalles en el enlace de abajo.
5. Inicie las sesiones de Tmux automáticamente
Siempre es una buena práctica ejecutar un proceso de larga duración dentro de una sesión de Tmux cuando se trabaja con sistemas remotos a través de SSH.
Porque evita que pierda el control del proceso en ejecución si la conexión de red se interrumpe repentinamente.
Una forma de evitar este problema es iniciar las sesiones de Tmux automáticamente. Consulte el enlace a continuación para obtener más información.
Conclusión
En esta guía, hemos discutido el uso de comandos Tmux con ejemplos. Esta fase le brinda una comprensión básica de la utilidad de línea de comandos de Tmux y cómo usar Tmux para administrar múltiples sesiones de terminal. Consulte las páginas de manual para obtener más información.
$ man tmux
Tanto las utilidades GNU Screen como Tmux pueden ser muy útiles para administrar servidores de forma remota a través de SSH. Aprenda a fondo los comandos Screen y Tmux para administrar sus servidores remotos como un profesional.