Maintenir ses sessions terminal à distance avec tmux sous Linux¶
Résumé
Ce tutoriel explique comment utiliser tmux (Terminal Multiplexer) pour maintenir des sessions terminal ouvertes même en cas de coupure réseau, et comment gérer plusieurs fenêtres ou panneaux dans une seule connexion SSH. C'est un outil indispensable pour l'administration système.
| Propriété | Valeur |
|---|---|
| Difficulté | Débutant |
| OS / Environnement | Linux (Ubuntu, Debian, etc.) |
| Dernière mise à jour | 2026-06-05 |
Contexte¶
Lorsque vous administrez un serveur distant via SSH, l'exécution d'une commande longue (comme une mise à jour système, une compilation ou un script de sauvegarde) peut être risquée : si votre connexion réseau coupe ou que vous fermez accidentellement votre terminal, la commande s'interrompt brutalement.
tmux (Terminal Multiplexer) résout ce problème en créant une session persistante sur le serveur. Vous pouvez lancer votre commande, "détacher" la session pour fermer votre terminal en toute sécurité, puis vous y "rattacher" plus tard, depuis n'importe où. De plus, tmux permet de diviser un seul terminal en plusieurs panneaux ou fenêtres, évitant ainsi d'ouvrir de multiples connexions SSH.
Prérequis¶
- Un accès à une machine Linux (physique, VM ou Cloud).
- Des droits d'administration (
sudo) pour l'installation, bien que l'utilisation detmuxne nécessite pas de privilèges particuliers.
Procédure¶
Étape 1 : Installation de tmux¶
Sur les distributions basées sur Debian ou Ubuntu, tmux est présent dans les dépôts officiels.
Étape 2 : Lancer et détacher une session simple¶
Pour démarrer votre première session tmux, tapez simplement :
Une nouvelle session s'ouvre avec une barre d'état verte en bas de l'écran. Vous pouvez y taper vos commandes normalement. Par exemple, lancez une commande qui tourne en boucle :
Maintenant, nous allons détacher la session pour la laisser tourner en arrière-plan. Dans tmux, toutes les actions commencent par un préfixe clavier (par défaut Ctrl+b), suivi d'une touche d'action.
- Appuyez sur Ctrl+B, puis relâchez les touches.
- Appuyez sur la touche D (pour detach).
Vous retrouvez votre invite de commande d'origine. Le ping continue de tourner sur le serveur !
Étape 3 : Lister et rattacher les sessions¶
Pour voir les sessions tmux actuellement actives sur le serveur :
Pour revenir à cette session et voir le ping toujours en cours, rattachez-vous (attach) :
tmux a en raccourci).
Arrêtez le ping avec Ctrl+C, puis tapez exit pour fermer et détruire définitivement cette session tmux.
Étape 4 : Créer des sessions nommées¶
Il est plus pratique de nommer ses sessions pour s'y retrouver.
Pour s'y rattacher plus tard :
Étape 5 : Gérer plusieurs fenêtres et panneaux¶
tmux brille par sa capacité à diviser l'écran. Assurez-vous d'être dans une session tmux pour tester ces raccourcis.
Gérer les fenêtres (comme des onglets) :
- Créer une nouvelle fenêtre : Ctrl+B puis C (create)
- Passer à la fenêtre suivante : Ctrl+B puis N (next)
- Revenir à la fenêtre précédente : Ctrl+B puis P (previous)
Diviser l'écran en panneaux (splits) :
- Diviser l'écran verticalement (gauche/droite) : Ctrl+B puis ++%++
- Diviser l'écran horizontalement (haut/bas) : Ctrl+B puis ++"++
- Naviguer entre les panneaux : Ctrl+B puis les Flèches directionnelles
Aide-mémoire¶
Voici les raccourcis fondamentaux de tmux (le préfixe par défaut est Ctrl+b) :
Action tmux |
Raccourci / Commande |
|---|---|
| Démarrer une session | tmux |
| Démarrer une session nommée | tmux new -s <nom> |
| Détacher la session (laisser tourner) | Ctrl+B puis D |
| Lister les sessions actives | tmux ls |
| Se rattacher à une session | tmux attach -t <nom_ou_numero> |
| Scroller dans le terminal | Ctrl+B puis ++[++ (utilisez les flèches pour monter/descendre, puis Q pour quitter) |
| Fermer la session actuelle | Tapez exit ou Ctrl+D |
Ressources¶
- Manuel officiel de tmux (man page) — Documentation complète.
- tmux Cheat Sheet — Un excellent aide-mémoire visuel pour tous les raccourcis.