tmux : Un multiplexeur de terminal pratique
Table des matières
tmux est un utilitaire permettant d'ouvrir plusieurs terminaux dans une même console, de passer de l'un à l'autre et de les récupérer plus tard.
Il peut être pratique lorsque l'on souhaite lancer plusieurs commandes, et que la machine est à distance. Cela évite d'ouvrir plusieurs connexions SSH par exemple.
Aussi, si la connexion réseau coupe, lors de la reconnexion, on peut récupérer le shell tel qu'il était avant la perte de connexion.
Il suffit d'installer le paquet tmux.
Red Hat / Fedora et dérivées :
Debian / Ubuntu :
Gentoo :
Pour créer un nouveau terminal :
Sans nom spécifié, le terminal porte un numéro qui s'incrémente : 1 puis 2 ...
Une fois dans notre session, si on souhaite laisser tourner un programme dedans, en tâche de fond et avoir la main sur la console, on détache le terminal via la commande de touches : Ctrl + b puis d
Pour consulter les tmux créés :
On a alors la liste de leur nom et ainsi que la date de création de ceux-ci.
Pour revenir sur un tmux détaché :
A noter qu'on peut avoir plusieurs utilisateurs qui s'attachent à un tmux.
Cela est pratique pour suivre sur plusieurs consoles des manipulations d'un collègue en étant géographiquement éloigné ou dans le cadre de formations.
Pour quitter un tmux , il suffit de faire dans celui-ci la commande exit comme si on fermait une console normale. On revient alors sur le shell qui a lancé la commande tmux précédemment.
Si on veut tuer un tmux détaché (pour une raison X ou Y) :
Pour créer un tmux , directement en mode "détaché", ça se fera avec l'option -d :
Ce cas de figure peut être pratique dans le cas où on veut lancer un tmux pour un utilisateur de la machine.
Pour cela, on combine su et tmux :
Si on souhaite remonter dans un tmux et que la hauteur de la fenêtre est trop petite, la molette de la souris ne fonctionne pas.
Il faut donc passer en "copy mode" avec Ctrl+b et [ :
Ensuite voici les combinaisons possibles :
Page Up et Page Down : Monter ou Descendre d'une page
Pour quitter ce mode : q
Qu'est ce que tmux ?
tmux est un utilitaire permettant d'ouvrir plusieurs terminaux dans une même console, de passer de l'un à l'autre et de les récupérer plus tard.
Il peut être pratique lorsque l'on souhaite lancer plusieurs commandes, et que la machine est à distance. Cela évite d'ouvrir plusieurs connexions SSH par exemple.
Aussi, si la connexion réseau coupe, lors de la reconnexion, on peut récupérer le shell tel qu'il était avant la perte de connexion.
Installation
Il suffit d'installer le paquet tmux.
Red Hat / Fedora et dérivées :
Code BASH :
dnf install tmux
Debian / Ubuntu :
Code BASH :
apt install tmux
Gentoo :
Code BASH :
emerge -av app-misc/tmux
Commandes utiles
Créer un tmux
Pour créer un nouveau terminal :
Code BASH :
tmux new -s nom
Sans nom spécifié, le terminal porte un numéro qui s'incrémente : 1 puis 2 ...
Détacher un tmux
Une fois dans notre session, si on souhaite laisser tourner un programme dedans, en tâche de fond et avoir la main sur la console, on détache le terminal via la commande de touches : Ctrl + b puis d
Voir les tmux créés
Pour consulter les tmux créés :
Code BASH :
tmux ls
On a alors la liste de leur nom et ainsi que la date de création de ceux-ci.
Se rattacher à un tmux créé
Pour revenir sur un tmux détaché :
Code BASH :
tmux attach -t nom
A noter qu'on peut avoir plusieurs utilisateurs qui s'attachent à un tmux.
Cela est pratique pour suivre sur plusieurs consoles des manipulations d'un collègue en étant géographiquement éloigné ou dans le cadre de formations.
Quitter un tmux
Pour quitter un tmux , il suffit de faire dans celui-ci la commande exit comme si on fermait une console normale. On revient alors sur le shell qui a lancé la commande tmux précédemment.
Si on veut tuer un tmux détaché (pour une raison X ou Y) :
Code BASH :
tmux kill-session -t nom
Créer un tmux en mode détaché
Pour créer un tmux , directement en mode "détaché", ça se fera avec l'option -d :
Code BASH :
tmux new -d -s nom 'commande'
Créer un tmux en mode détaché pour un autre utilisateur
Ce cas de figure peut être pratique dans le cas où on veut lancer un tmux pour un utilisateur de la machine.
Pour cela, on combine su et tmux :
Code BASH :
su - utilisateur -c "tmux new -d -s nom 'commande'"
Naviguer dans un tmux
Si on souhaite remonter dans un tmux et que la hauteur de la fenêtre est trop petite, la molette de la souris ne fonctionne pas.
Il faut donc passer en "copy mode" avec Ctrl+b et [ :
Ensuite voici les combinaisons possibles :
Page Up et Page Down : Monter ou Descendre d'une page
Pour quitter ce mode : q