La commande screen
Introduction
Screen est un « multiplexeur de terminaux » 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.
Cet utilitaire est très utile lorsque l'on est connecté à un équipement en SSH et que l'on souhaite télécharger des fichiers lourds ou lancer des opérations longues sur la machine sans être interrompu par une potentielle déconnexion due à des problèmes réseaux ou à une trop longue durée d'inactivité (car fermeture de la session SSH = arrêt des processus lancés par l'utilisateur).
Installation
Le paquet screen s'installe sur la plupart des distributions Linux à l'aide du gestionnaire de paquets par défaut.
Utilisation
Ouvrir une nouvelle session screen :
screen
Ouvrir une nouvelle session screen en lui donnant un nom :
screen -S <nom de la session>
Si aucun nom n'est spécifié, screen va alors générer un nom de session aléatoire. Un ID se session sera toujours généré également pour permettre de se rattacher facilement à la session en cas de problème de clavier.
Se rattacher à une session screen en cours :
screen -r
Lorsqu'il n'y a qu'une seule session screen en cours, cette commande la rattache automatiquement. S'il y en a plusieurs, elle vous affichera les différentes sessions en cours et il faudra alors faire un choix :
Se rattacher à une session screen en spécifiant son nom :
screen -r <nom ou ID de la session>
Lister les sessions screen en cours :
screen -ls
ou
screen -list
Ce qui donne :
Dans l'exemple ici, la mention (Attached) affichée à côté de la session screen en cours indique que c'est la session à laquelle nous sommes connectés. J'ai donc lancé la commande screen depuis cette session. On y constate également qu'elle possède l'ID 142, que je pourrais utiliser également pour m'y rattacher (le chiffre juste avant son nom).
Se détacher d'une session screen :
Quitter le client SSH ou faire CTRL+A puis d
Se détacher d'une session screen en la quittant :
Faire CTRL+D ou utiliser la commande exit jusqu'à fermer la session.
Ou bien : Faire CTRL+A puis dd

