Por qué tmux
Un programa que se ejecuta actualmente en la computadora es un proceso. Para ejecutar más de un proceso con Linux, necesitaría más de una ventana de terminal: una ventana de terminal por proceso. Estas ventanas se superpondrán, y algunas casi cubren otras. Para atender un proceso, debe hacer clic en la ventana para llevarlo a la vanguardia. Cuando está a la vanguardia, puede ver algunos resultados o datos de entrada. Esto es multitarea: ejecutar más de un proceso simultáneamente; En este caso, con diferentes ventanas. Es multitarea sin el uso de TMUX. TMUX ofrece multiplexación como un mejor sustituto - ver a continuación.
Cada ventana usa una carcasa como Bash. Los comandos del programa deben escribirse en un shell antes de que se ejecuten.
Una sesión es un intercambio temporal de mensajes entre un usuario y su computadora o entre la computadora del usuario y una computadora remota a través de una red física. Un proceso puede implicar tal intercambio de mensajes. Trabajar con una ventana es una sesión. Trabajar con muchas ventanas en una duración sigue siendo una sesión.
El uso de la ventana terminal en Linux para la multitarea, como se demostró anteriormente, puede volverse engorroso cuando el número de procesos es más de tres y los procesos son largos.
La multitarea se puede hacer en una ventana de terminal, pero con los siguientes inconvenientes:
Si comienza un proceso con una ventana de terminal y desea iniciar otra, tendrá que hacer una pausa del primero. Cuando detiene un proceso, el proceso se detiene y no está haciendo nada. Luego puede comenzar el siguiente proceso. Si termina el siguiente proceso lo suficientemente pronto, entonces puede reanudar el primer proceso, todavía en la misma ventana. Eso parece multiplexación terminal, pero no es. Con la multiplexación terminal, los procesos deben ejecutarse al mismo tiempo.
Se pueden ejecutar más de un proceso en una ventana de terminal utilizando un esquema asincrónico. Sin embargo, diferentes procesos enviarán resultados a la misma ventana, y los resultados que se muestran serán inconsistentes. Además, a medida que ingrese los datos, irán a diferentes procesos. Este esquema solo puede funcionar cuando tiene pocos procesos, y conoce todos sus resultados, para poder saber qué aportes enviar y cuándo. Es poco probable que ocurra esa situación de pocos procesos.
Con una ventana de terminal, puede iniciar un proceso en una computadora remota, y luego la conexión física falla. Cuando se restaura la conexión, los resultados no serán confiables.
Otro inconveniente con las ventanas de la terminal convencional es que la comunicación no puede tener lugar entre las ventanas cuando se abre más de una ventana.
TMUX es un programa de software que resuelve estos problemas. Este artículo explica cómo TMUX resuelve estos problemas y discute algunas de las características adicionales de TMUX.
Contenido del artículo
La solución ofrecida por TMUX
Como se indicó anteriormente, la ventana del terminal tiene limitaciones para la multitarea. TMUX supera estas limitaciones. TMUX reemplaza la ventana del terminal con su propia ventana mientras está activa. TMUX puede tener más de una ventana. Las ventanas agregadas se superponen entre sí. Es posible cambiar entre estas ventanas superpuestas. Y así, los resultados no se mezclan, las entradas y los resultados no se mezclan. Una ventana TMUX se puede dividir en ventanas más pequeñas. Estas ventanas más pequeñas se llaman paneles.
Con el terminal convencional, si está ejecutando un proceso remoto y la conexión falla, es posible que no pueda continuar desde donde lo dejó cuando se restaura la conexión. Es decir, los resultados del proceso remoto de la computadora remota no serían confiables. TMUX puede resolver eso separando una sesión de ventana y luego volviendo a colocar más tarde.
En cada ventana, el caparazón (e.gramo., Bash) funciona para manejar los comandos.
Instalación de TMUX en Linux
Tal vez TMUX ya está instalado en su computadora. Por lo tanto, debe verificar si se instala primero para no reinstalar. En el símbolo del sistema terminal, escriba
tmux --versióny presione Entrar.
Si no está instalado, le dirá. Si está instalado, tendrá comentarios como,
Uso: TMUX [-2CLUVV] [-C Shell-Command] [-f archivo] [-l Socket-Name]Los comandos en este tutorial han sido probados con Ubuntu, y han operado bien. Entonces, si actualmente está utilizando el sistema operativo Ubuntu, puede probar los comandos mientras lee.
Instalación de TMUX en Ubuntu y Debian
Para instalar en cualquiera de estos sistemas operativos, escriba
y presione Entrar. Si le pide su contraseña, escriba su contraseña y presione Entrar.
Instalación de TMUX en CentOS y Fedora
Para instalar en CentOS o Fedora, escriba
y presione Entrar. Responda cualquier pregunta que se haga.
Comenzando TMUX
TMUX es una utilidad que debe iniciarse antes de que pueda usarse. Cuando abre la ventana del terminal, TMUX no se está ejecutando. Se puede iniciar y detener. Cuando se inicia, toma el control de la ventana del terminal y superpone sus propias ventanas. Cuando se detiene, regresa a la ventana de su terminal. Para iniciar TMUX, escriba
tmux(todos los caracteres en minúsculas) y presione Entrar. Tendrás una nueva ventana. Tmux se haría cargo de la nueva ventana. La nueva ventana se parece a la ventana del terminal pero con una barra de estado en la parte inferior. En esta situación, la barra de estado indica que está en la ventana TMUX 0, que se muestra como 0: Bash (si está utilizando el shell de Bash).
La combinación de clave predeterminada para TMUX es:
Ctrl+B
Presiona la tecla de control y el carácter B minúscula, y tan pronto como suelte las teclas, presiona otro carácter para afectar. Para mostrar la lista de comandos TMUX, escriba
Ctrl+B ?
Es decir, presione la tecla de control y el carácter B a la vez, y tan pronto como libere las dos teclas, presione Shift y el? Tecla (si estás usando el teclado en inglés). Deberías ver la lista de comandos. La lista es bastante larga. El cursor estaría en la parte superior. Puede usar la tecla de flecha hacia abajo para desplazarse hacia abajo en la lista.
Para salir de la pantalla de listado, presione
Q
y volverás en el símbolo del sistema.
Salir de la ventana actual
Para salir de la ventana actual, escriba
y presione Entrar. Ya verás
[Salido]Indicando que ha salido de la aplicación TMUX (si solo se abrió una ventana TMUX). Debe volver a la ventana del terminal normal si solo tenía una ventana TMUX. Si ejecuta el comando "Salir" nuevamente, la ventana del terminal normal se cerrará.
Creando más de una ventana TMUX
En la sección anterior, solo se creó una ventana. Cuando comienzas TMUX, se crea una ventana (0: bash). Puedes crear más. Si no ha abierto la ventana del terminal, ábrala e inicie TMUX escribiendo,
tmuxy presionando enter. La ventana del terminal debe transformarse en una ventana TMUX, la primera ventana de TMUX. Cree tres ventanas de pantalla más escribiendo los siguientes comandos y presionando Enter, donde C está en minúsculas (y no necesita una tecla de cambio):
Ctrl+B C
Ctrl+B C
Ctrl+B C
Para cada uno de los comandos, presiona la tecla de control y la tecla B (en minúsculas); Suelte estas teclas y luego solo presione la tecla C. Puede tomar una experiencia breve para hacerlo bien. Si ha ejecutado con éxito los tres comandos, y si está utilizando el shell bash, entonces en la barra de estado, debería ver
[0] 0: Bash 1: Bash 2: Bash- 3: Bash*[0] significa sesión 0. El resto de la línea significa que ha abierto cuatro ventanas, que son 0: Bash, 1: Bash, 2: Bash y 3: Bash. El conteo de Windows de TMUX comienza desde 0.
Para ir a cualquier otra ventana, ejecute el siguiente comando:
Ctrl+B S
Debería ver una presentación diferente, una lista de presentaciones de Windows. Puede resaltar la etiqueta de la ventana que desea usar la tecla de protección izquierda o la tecla de arroz derecho en el teclado. Use la tecla de flujo derecho para elegir el número 1 de la ventana, que en realidad es la segunda ventana, y presione Entrar.
Si hubiera escrito algún comando en la segunda ventana, debería ver los comandos en la ventana. En la barra de estado, también deberías ver 1: Bash*. El asterisco (*) indica la ventana en la que se encuentra, y en este caso, es la ventana número 1, que en realidad es la segunda ventana.
Puede continuar escribiendo cualquier comando que desee en esta segunda ventana. Puedes cambiar a otra ventana, de manera similar.
Cambiar a otras ventanas
Puede cambiar a otra ventana utilizando el método anterior. Hay otro método: cambiar a la ventana número 3 (la cuarta ventana), ejecutar
Ctrl+B 3
Ahora deberías tener,
3: Bash*Con el asterisco en la barra de estado, lo que significa que estás en la cuarta ventana. Entonces, para ir a una nueva ventana, puede hacer "índice Ctrl+B", donde un índice es un número ordinal menos uno.
Ir a la siguiente y anterior Windows
Para ir a la siguiente ventana, hacer
Ctrl+B N
Si estuvieras en la segunda ventana, llegarías a la tercera ventana. Si estuvieras en la última ventana, llegarías a la primera ventana. Para ir a la ventana anterior, hacer
Ctrl+B P
Si estuvieras en la primera ventana, llegarías a la última ventana.
Enumerar todas las ventanas
Para enumerar todas las ventanas, hacer
Ctrl+B W
En la lista que aparece, podrá elegir la siguiente ventana que desee, con el teclado Arrow o Down-Arrow. Después de resaltar, presione la tecla ENTER para ingresar a la ventana elegida.
Salir de una ventana
Para salir de un tipo de ventana,
y presione Entrar. Puede salir de todas las ventanas ejecutando repetidamente el comando de salida. Si hace eso la cantidad de veces, correspondiente al número de ventanas TMUX, llegará a la ventana del terminal, que fue tomada por la utilidad TMUX; y tu verás:
[Salido]Si vuelve a hacer el comando de salida, cerrará la ventana del terminal.
Matar la ventana actual
Cuando matas una ventana, la matas con su proceso. Para matar una ventana, hacer
CTRL+B &
Aparecerá un mensaje similar al siguiente, preguntándote si realmente quieres matar la ventana.
Bash de Kill-Window? (S/N)Si realmente quieres matar la ventana, presiona Y, y la ventana será asesinada si no quieres matar la ventana, presione N.
Adjuntar y separar una sesión de TMUX
Una ventana TMUX no solo se usa para trabajar en la computadora personal local. Se puede utilizar para llevar a cabo un proceso en una computadora remota. Cuando la ventana está funcionando para la computadora personal local o ejecuta un proceso en una computadora remota, se dice que la ventana está conectada. En el caso de un proceso remoto, si se separa la ventana y la conexión se rompe, el resultado del proceso en la computadora remota seguirá siendo confiable. Por supuesto, el proceso en la computadora remota puede detenerse, eso no es un problema.
Cuando se restaura la conexión, puede continuar desde donde lo dejó reiniciando la ventana.
Puede separarse de la sesión actual ejecutando:
Ctrl+B D
Si el comando es exitoso, saldrá de las ventanas de TMUX y en la ventana del terminal, con su símbolo del sistema. Antes del mensaje, y por encima, debería ver algo como:
[separado (de la sesión 0)]Ahora que está en la ventana de la terminal, para mostrar la lista de sesiones, escriba
tmux lsy presione Entrar. La primera columna del listado da el nombre de la sesión. En el caso de este artículo, solo debe haber una sesión con el nombre 0. Entonces, para volver a la sesión, escriba
TMUX ACECHA -T 0y presione Entrar.
Matar una sesión
Desde la ventana de la terminal, puedes matar una sesión. Deberías estar separado de una sesión antes de matarla. La sintaxis para matar una sesión desde la ventana del terminal es:
Tmux Kill -Session -T Nombre de la sesión
División de ventanas
Dividido verticalmente
Para dividir la ventana actual verticalmente, hacer
CTRL+B %
Si está utilizando el teclado en inglés, deberá presionar la tecla de cambio y la tecla que tiene % para obtener %. Si hiciste eso, entonces tendrías una línea vertical en el medio de la ventana.
Para ir al siguiente panel, hacer
CTRL+B O
Donde o no es cero, es el carácter del alfabeto, o. El movimiento es cíclico. Bajo esta condición, es una ventana que se ha dividido en paneles. Las otras ventanas no tienen paneles. En una ventana con paneles, se pueden escribir comandos en cada uno de los paneles.
Matar un panel
Para matar un panel con sus comandos, mientras que el cursor está en el panel, do
CTRL+B X
Donde x es minúscula x, responda cualquier pregunta que se haga. El panel muere con sus comandos. Los comandos no unen los comandos de ningún otro panel.
Dividido horizontalmente
Para dividir la ventana actual horizontalmente, hacer
Ctrl+B "
Si está utilizando el teclado en inglés, deberá presionar la tecla Shift y la tecla que tiene ", para obtener".
Para ir al siguiente panel, hacer
CTRL+B O
Donde o no es cero, es el carácter del alfabeto, o. El movimiento es cíclico.
Matas un panel horizontal de la misma manera que matas un panel vertical.
Conclusión
TMUX es una aplicación que permite a un usuario de Linux tener su sesión de Windows de Terminal en una ventana. Cada ventana se puede dividir en paneles. La combinación de clave predeterminada para TMUX es Ctrl+B. Después de eso, se debe presionar a otro personaje para obtener un efecto. Con todas sus características, TMUX es un multiplexor terminal de Windows Manager. TMUX tiene un rival llamado pantalla. La multiplexación aquí significa tener todas sus ventanas para sus procesos en una marco de ventana.
Chrys