Vous avez déjà été confronté à la situation où vous effectuez une tâche de longue haleine sur une machine distante, et soudain votre connexion tombe, la session SSH est terminée, et votre travail est perdu. Cela nous est tous arrivé un jour ou l’autre, n’est-ce pas ? Heureusement, il existe un utilitaire appelé screen
qui nous permet de reprendre les sessions.
Introduction #
Screen ou GNU Screen est un multiplexeur de terminal. En d’autres termes, cela signifie que vous pouvez démarrer une session Screen et ensuite ouvrir un nombre quelconque de fenêtres (terminaux virtuels) à l’intérieur de cette session. Les processus s’exécutant dans Screen continueront à fonctionner lorsque leur fenêtre n’est pas visible, même si vous êtes déconnecté.
Installer Linux GNU Screen #
Le paquet screen est préinstallé sur la plupart des distros Linux de nos jours. Vous pouvez vérifier s’il est installé sur votre système en tapant :
screen --version
Screen version 4.06.02 (GNU) 23-Oct-17
Si screen n’est pas installé sur votre système, vous pouvez facilement l’installer en utilisant le gestionnaire de paquets de votre distro.
Installation de Linux Screen sur Ubuntu et Debian #
sudo apt update
sudo apt install screen
Installation de Linux Screen sur CentOS et Fedora #
sudo yum install screen
Démarrer Linux Screen #
Pour démarrer une session screen, tapez simplement screen
dans votre console :
screen
Ceci va ouvrir une session écran, créer une nouvelle fenêtre, et démarrer un shell dans cette fenêtre.
Maintenant que vous avez ouvert une session écran, vous pouvez obtenir une liste de commandes en tapant :
Ctrl+a
?
Démarrer une session nommée #
Les sessions nommées sont utiles lorsque vous exécutez plusieurs sessions écran. Pour créer une session nommée, exécutez la commande screen avec les arguments suivants :
screen -S session_name
C’est toujours une bonne idée de choisir un nom de session descriptif.
Travailler avec les fenêtres d’écran Linux #
Lorsque vous démarrez une nouvelle session d’écran, elle crée une seule fenêtre avec un shell dedans.
Vous pouvez avoir plusieurs fenêtres à l’intérieur d’une session Screen.
Pour créer une nouvelle fenêtre avec un shell de type Ctrl+a
c
, le premier numéro disponible de la plage 0...9
lui sera attribué.
Vous trouverez ci-dessous les commandes les plus courantes pour gérer Linux Screen Windows :
-
Ctrl+a
c
Créer une nouvelle fenêtre (avec le shell) -
Ctrl+a
"
Lister toutes les fenêtres -
Ctrl+a
0
Passer à la fenêtre 0 (par le numéro ) -
Ctrl+a
A
Renommer la fenêtre actuelle -
Ctrl+a
S
Diviser la région actuelle horizontalement en deux régions -
Ctrl+a
|
Diviser la région actuelle région verticalement en deux régions -
Ctrl+a
tab
Basculer le focus de la saisie vers la région suivante -
Ctrl+a
Ctrl+a
Basculer entre la région actuelle et la région précédente -
Ctrl+a
Q
Fermer toutes les régions sauf la région actuelle -
Ctrl+a
X
Fermer la région actuelle
.
.
Détacher de la session écran Linux #
Vous pouvez vous détacher de la session écran à tout moment en tapant :
Ctrl+a
d
Le programme exécuté dans la session écran continuera à s’exécuter après que vous vous soyez détaché de la session.
Rattacher à un écran Linux #
Pour reprendre votre session écran, utilisez la commande suivante :
screen -r
Dans le cas où vous avez plusieurs sessions écran en cours d’exécution sur votre machine, vous devrez ajouter l’ID de la session écran après le commutateur r
.
Pour trouver l’ID de session, listez les sessions d’écran en cours d’exécution avec :
screen -ls
Si vous voulez restaurer l’écran 10835.pts-0, alors tapez la commande suivante :
screen -r 10835
Personnaliser l’écran Linux #
Lorsque screen
est lancé, il lit ses paramètres de configuration à partir de /etc/screenrc
et ~/.screenrc
si le fichier est présent. Nous pouvons modifier les paramètres par défaut de Screen selon nos préférences en utilisant le fichier .screenrc
.
Voici un exemple de configuration ~/.screenrc
avec une ligne d’état personnalisée et quelques options supplémentaires:
Utilisation basique de l’écran sous Linux #
Voici les étapes les plus basiques pour commencer à utiliser l’écran :
- Sur l’invite de commande, tapez
screen
. - Exécutez le programme souhaité.
- Utilisez la séquence de touches
Ctrl-a
Ctrl-d
pour vous détacher de la session screen. - Rattachez-vous à la session écran en tapant
screen -r
.
Conclusion #
Dans ce tutoriel, vous avez appris à utiliser Gnu Screen. Vous pouvez maintenant commencer à utiliser l’utilitaire Screen et créer plusieurs fenêtres d’écran à partir d’une seule session, naviguer entre les fenêtres, détacher et reprendre les sessions d’écran et personnaliser votre terminal d’écran à l’aide du fichier .screenrc
.
Il y a beaucoup plus à apprendre sur Gnu Screen à la page du Manuel de l’utilisateur de Screen.