tmux expliqué simplement : à quoi ça sert, les 8 raccourcis à connaître, et comment ne plus jamais perdre votre travail quand la connexion SSH coupe.
Vous lancez une longue mise à jour sur votre serveur. Votre Wi-Fi décroche une seconde. La connexion SSH coupe… et la mise à jour avec elle, laissant le serveur dans un état incertain.
tmux règle ce problème. C'est un petit outil qui garde vos sessions de terminal vivantes sur le serveur, quoi qu'il arrive à votre connexion.
Le principe : un terminal qui ne meurt pas
Sans tmux, votre terminal sur le serveur est attaché à votre connexion SSH. La connexion meurt, le terminal meurt, et tout ce qui tournait dedans s'arrête.
Avec tmux, c'est différent :
Votre ordinateur ──SSH──► Serveur
└── tmux (tourne en permanence)
├── fenêtre 0 : travail
├── fenêtre 1 : logs
└── fenêtre 2 : secoursVotre connexion SSH n'est plus qu'une fenêtre sur la session tmux. Si elle coupe, tmux continue. Vous vous reconnectez, vous vous « rattachez », et vous retrouvez tout exactement où vous l'aviez laissé, commande en cours comprise.
Bonus : vous pouvez aussi vous détacher volontairement, fermer votre ordinateur, et revenir le lendemain.
Installer et lancer tmux
Sur Debian ou Ubuntu :
sudo apt install -y tmux
tmux new -s chantier-s chantier donne un nom à la session, pratique pour la retrouver. Une barre verte apparaît en bas de l'écran : vous êtes dans tmux.
La touche magique : Ctrl-b
Toutes les commandes tmux commencent par le préfixe : vous appuyez sur Ctrl et b ensemble, vous relâchez, puis vous tapez la touche de la commande.
Par exemple, « Ctrl-b puis c » : Ctrl+b, on relâche, puis c.
Les 8 raccourcis à connaître
| Raccourci | Action |
|---|---|
Ctrl-b puis c | créer une nouvelle fenêtre |
Ctrl-b puis , | renommer la fenêtre |
Ctrl-b puis 0…9 | aller à la fenêtre n° X |
Ctrl-b puis n / p | fenêtre suivante / précédente |
Ctrl-b puis " | couper l'écran horizontalement |
Ctrl-b puis % | couper l'écran verticalement |
Ctrl-b puis une flèche | passer d'un panneau à l'autre |
Ctrl-b puis d | se détacher (tout continue de tourner) |
Et en dehors de tmux :
tmux ls # lister les sessions
tmux attach -t chantier # se rattacher à la session « chantier »Pour fermer une fenêtre, tapez simplement exit dedans. Quand la dernière fenêtre est fermée, la session disparaît.
Une organisation qui marche
Pour administrer un serveur, trois fenêtres suffisent :
- travail : là où vous tapez vos commandes ;
- logs : les journaux en direct, pour voir ce qui se passe pendant que vous travaillez :
journalctl -f - secours : une fenêtre libre, toujours prête si quelque chose bloque ailleurs.
Les pièges à connaître
Le défilement. Dans tmux, la molette ne remonte pas toujours l'historique. Faites Ctrl-b puis [, naviguez avec les flèches ou Page Haut, et q pour sortir.
Les groupes d'utilisateur. Le serveur tmux garde les droits qu'il avait au moment où il a démarré. Si vous ajoutez votre utilisateur à un groupe (par exemple docker), il ne sera pas pris en compte en vous détachant puis en vous rattachant. Utilisez newgrp docker dans la fenêtre concernée, ou quittez tmux complètement (tmux kill-server) et relancez une session.
Root ou pas root. tmux tourne sous l'utilisateur qui l'a lancé. Si vous l'avez démarré en root puis créé un utilisateur normal, pensez à quitter cette session et à en lancer une nouvelle sous le bon utilisateur.
Pour aller plus loin
Mots-clés :
Les noms de logiciels et marques éventuellement cités dans cet article (Nextcloud, Matomo, Plausible, Umami, Vaultwarden, Bitwarden, Passbolt, Infisical, Activepieces, ERPNext, Dolibarr, etc.) appartiennent à leurs titulaires respectifs et ne sont mentionnés qu'à titre nominatif ou de comparaison. Le Coq Numérique n'est ni affilié, ni partenaire, ni sponsorisé par ces éditeurs, installe et infogère uniquement des versions non modifiées de ces logiciels libres, et n'inclut pas leurs modules « Enterprise »/commerciaux dans ses offres. Voir nos mentions légales.
Passez à l'action
Protégez vos données et mettez-vous en conformité RGPD. Audit offert sous 24 h.
Demander mon audit offert