La commande screen est un multiplexeur de terminal sous Linux, offrant la possibilité de gérer plusieusr fenêtres de terminal dans une seule session. Cet outil est particulièrement utile pour les connexions distantes et l'exécution de processus de longue durée, grâce à sa capacité à détacher et réattacher des sessions.
- Installation de screen
Sur la plupart des distributions Linux, screen n'est pas préinstallé. Utilisez les commandes suivantes pour l'installer selon votre système :
yum install screen -y # Pour CentOS ou RHEL
apt-get install -y screen # Pour Debian ou Ubuntu
- Démarrage d'une session nommée
Pour initialiser une session avec un identifiant descriptif, exécutez :
screen -S projet_travail
Cela crée une nouvelle session et y accède immédiatement.
- Consultation des sesions actives
La commande suivante affiche toutes les sessions en cours avec leurs détails :
screen -ls
En l'absence de sessions actives, un message indiquant qu'aucune socket n'est trouvée s'affiche.
- Réconnexion à une session précédente
Pour reprendre le contrôle d'une session détachée, spécifiez son identifiant ou son nom :
screen -r 54321.pts-0.hote # Via l'identifiant de session
screen -r projet_travail # Via le nom de session
- Détachement d'une session courante
Pour quitter temporaireemnt une session sans la terminer, utilisez cette combinaison de touches :
Ctrl + A, D
La session se poursuit en arrière-plan et peut être reprise ultérieurement.
- Terminaison d'une session
Pour fermer définitivement une session, deux méthodes sont disponibles :
exit # Saisir exit dans la session
Ctrl + D # Raccourci clavier pour quitter
La session est alors retirée de la liste des sessions actives.
- Exemples de gestion courante
Voici des commandes typiques pour manipuler plusieurs sessions :
screen -ls # Lister toutes les sessions
screen -r 98765.pts-1.domaine # Reconnecter par ID
screen -r session_serveur # Reconnecter par nom
Ctrl + A, D # Détacher la session active
exit # Quitter la session
- Commandes complémentaires
Pour attribuer un nom à une session : screen -S nouveau_nom
Pour attacher à une session en arrière-plan sans spécifier d'identifiant : screen -r
Pour forcer la fermeture d'une session spécifique : screen -X -S nom_session quit