Utilisation de l’écran pour attacher et détacher les sessions de la console
Screen est un puissant multiplexeur de terminal qui vous permet de créer, de gérer et de reprendre plusieurs sessions shell à partir d’une seule fenêtre de terminal. Ceci est particulièrement utile lorsque vous travaillez sur des serveurs distants via SSH ou lorsque vous avez besoin d’exécuter des processus de longue durée que vous souhaitez continuer à exécuter même après vous être déconnecté de la session. Dans ce guide, nous allons couvrir les bases de l’utilisation de screen, y compris comment démarrer, détacher et rattacher des sessions.
Installation de screen
Avant d’utiliser Screen, assurez-vous qu’il est installé sur votre système. Sur la plupart des distributions Linux, vous pouvez l’installer à l’aide du gestionnaire de paquets :
Pour Debian/Ubuntu :
Pour CentOS/RHEL :
Pour Fedora :
Pour macOS (avec Homebrew) :
Démarrer une session screen
Pour démarrer une nouvelle session screen, il suffit de taper :
Cela ouvrira une nouvelle session d’écran et une invite standard de l’interpréteur de commandes s’affichera.
Attribution d’un nom à une session screen
Pour faciliter l’identification de vos sessions d’écran, vous pouvez les nommer :
Remplacez nom_session par un nom descriptif pour votre session. Cela facilite la gestion de plusieurs sessions.
Exemple :
Détachement d’une session screen
Pour se détacher d’une session écran sans y mettre fin, appuyez sur la combinaison de touches suivante :
- Ctrl A : indique à l’écran que vous souhaitez envoyer une commande.
- D : Il s’agit de la commande de détachement de la session.
Une fois la session détachée, vous reviendrez à l’invite du terminal, mais la session screen continuera à s’exécuter en arrière-plan.
Liste des sessions screen
Si plusieurs sessions d’écran sont en cours d’exécution, vous pouvez les lister avec :
Cette commande affiche toutes les sessions d’écran actives, ainsi que leur identifiant et leur nom.
Exemple de sortie :
12345.mysession (détachée)
67890.another_session (détaché)
2 Sockets dans /var/run/screen/S-user.
Se rattacher à une session écran
Pour se rattacher à une session screen, utilisez l’option -r suivie de l’identifiant ou du nom de la session :
Utilisation de l’ID de session :
Utilisation du nom de la session :
Si vous n’avez qu’une seule session détachée, vous pouvez simplement exécuter :
S’attacher à une session screen déjà attachée
Si une session écran est encore attachée et que vous souhaitez la rattacher de force (par exemple, si vous avez perdu la connexion), utilisez les options -d -r :
- -d : Détache la session si elle est déjà attachée.
- -r : Rattache à la session.
Cette commande détache la session du terminal précédent et la rattache au terminal actuel.
Création d’une nouvelle fenêtre dans une session écran
Une fois dans une session écran, vous pouvez créer de nouvelles fenêtres (terminaux virtuels) à l’aide de la commande :
Chaque nouvelle fenêtre est comme un nouveau terminal à l’intérieur de la session d’écran. Vous pouvez passer de l’une à l’autre, ce qui peut être utile pour le multitâche.
Passer d’une fenêtre à l’autre
Pour passer d’une fenêtre à l’autre à l’intérieur d’une session d’écran, procédez comme suit
- Pour passer à la fenêtre suivante :Ctrl A, puis N
- Pour aller à la fenêtre précédente :Ctrl A, puis P
- Pour lister toutes les fenêtres :Ctrl A, puis “
La liste de toutes les fenêtres ouvertes s’affiche, ce qui vous permet d’en sélectionner une.
Fermer une session d’écran
Pour fermer une session écran, il suffit de quitter tous les processus en cours ou de taper exit dans chaque fenêtre jusqu’à ce que toutes les fenêtres soient fermées. Lorsque la dernière fenêtre est fermée, la session d’écran se termine.
Résumé des commandes d’écran courantes
Conclusion
screen est un outil polyvalent qui permet de gérer des processus de longue durée et de maintenir des sessions de console persistantes sur des serveurs distants. Avec screen, vous pouvez vous détacher des sessions, maintenir les processus en cours d’exécution en arrière-plan et vous rattacher plus tard depuis n’importe où, ce qui en fait un outil inestimable pour les administrateurs système et les développeurs. En maîtrisant les commandes de base pour créer, gérer et naviguer dans les sessions screen, vous pouvez considérablement améliorer votre productivité dans les environnements basés sur les terminaux.