Avez-vous déjà été confronté à la situation où vous effectuez une tâche de longue durée sur une machine distante, et soudainement votre connexion tombe, la session SSH est terminée et votre travail est perdu. Eh bien, cela nous est tous arrivé à un moment donné, n'est-ce pas? Heureusement, il existe un utilitaire appelé screen
qui nous permet de reprendre les séances.
Introduction #
Screen ou GNU Screen est un multiplexeur de terminaux. En d'autres termes, cela signifie que vous pouvez démarrer une session d'écran, puis ouvrir n'importe quel nombre de fenêtres (terminaux virtuels) à l'intérieur de cette session. Les processus en cours d'exécution dans Screen continueront de s'exécuter lorsque leur fenêtre n'est pas visible, même si vous êtes déconnecté.
Écran d'installation Linux GNU #
Le package screen est préinstallé sur la plupart des distributions 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 vous n'avez pas d'écran installé sur votre système, vous pouvez facilement l'installer à l'aide du gestionnaire de paquets de votre distribution.
Installer Linux Screen sur Ubuntu et Debian #
sudo apt update
sudo apt install screen
Installer Linux Screen sur CentOS et Fedora #
sudo yum install screen
Écran de démarrage de Linux #
Pour démarrer une session screen, tapez simplement screen
dans votre console :
screen
Cela ouvrira une session d'écran, créera une nouvelle fenêtre et démarrera un shell dans cette fenêtre.
Maintenant que vous avez ouvert une session screen, vous pouvez obtenir une liste de commandes en tapant :
Ctrl+a
?
Démarrage de la session nommée #
Les sessions nommées sont utiles lorsque vous exécutez plusieurs sessions d'é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 Linux Screen Windows #
Lorsque vous démarrez une nouvelle session d'écran, cela crée une fenêtre unique avec un shell.
Vous pouvez avoir plusieurs fenêtres dans une session Screen.
Pour créer une nouvelle fenêtre avec le type de shell Ctrl+a
c
, le premier nombre disponible dans la plage 0...9
lui sera attribué.
Voici quelques-unes des commandes les plus courantes pour gérer Linux Screen Windows :
Ctrl+a
c
Créer une nouvelle fenêtre (avec shell).Ctrl+a
"
Lister toutes les fenêtres.Ctrl+a
0
Passer à la fenêtre 0 (par numéro).Ctrl+a
A
Renommer la fenêtre actuelle.Ctrl+a
S
Diviser horizontalement la région actuelle en deux régions.Ctrl+a
|
Diviser verticalement la région actuelle en deux régions.Ctrl+a
tab
Basculez le focus d'entrée vers la région suivante.Ctrl+a
Ctrl+a
Basculer entre les fenêtres actuelle et précédenteCtrl+a
Q
Fermez toutes les régions sauf la région actuelle.Ctrl+a
X
Fermer la région actuelle.
Détacher de la session d'écran Linux #
Vous pouvez vous détacher de la session d'écran à tout moment en tapant :
Ctrl+a
d
Le programme en cours d'exécution dans la session screen continuera de s'exécuter après que vous vous serez déconnecté de la session.
Rattacher à un écran Linux #
Pour reprendre votre session d'écran, utilisez la commande suivante :
screen -r
Si vous avez plusieurs sessions d'écran en cours d'exécution sur votre machine, vous devrez ajouter l'ID de session d'écran après le r
commutateur.
Pour trouver l'ID de session, répertoriez les sessions d'écran en cours d'exécution avec :
screen -ls
There are screens on:
10835.pts-0.linuxize-desktop (Detached)
10366.pts-0.linuxize-desktop (Detached)
2 Sockets in /run/screens/S-linuxize.
Si vous souhaitez restaurer l'écran 10835.pts-0, tapez la commande suivante :
screen -r 10835
Personnaliser l'écran Linux #
Lorsque screen
est démarré, il lit ses paramètres de configuration depuis /etc/screenrc
et ~/.screenrc
si le fichier est présent. Nous pouvons modifier les paramètres d'écran par défaut selon nos préférences en utilisant le .screenrc
fichier.
Voici un exemple ~/.screenrc
configuration avec ligne d'état personnalisée et quelques options supplémentaires :
# Turn off the welcome message
startup_message off
# Disable visual bell
vbell off
# Set scrollback buffer to 10000
defscrollback 10000
# Customize the status line
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]'
Utilisation de base de l'écran Linux #
Vous trouverez ci-dessous les étapes les plus élémentaires pour démarrer avec screen :
- Sur l'invite de commande, saisissez
screen
. - Exécutez le programme souhaité.
- Utilisez la séquence de touches
Ctrl-a
+Ctrl-d
pour se détacher de la session d'écran. - Reconnectez-vous à la session screen 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 .screenrc
fichier.
Il y a beaucoup plus à apprendre sur Gnu Screen sur la page du manuel de l'utilisateur de Screen.
Si vous avez des questions ou des commentaires, n'hésitez pas à laisser un commentaire.