Tutoriel | Comment utiliser Linux Screen

Pourquoi Screen?

Avez-vous déjà été confronté à une situation dans laquelle vous effectuez une tâche de longue durée sur une machine distante et soudainement votre connexion est interrompue, la session SSH est interrompue 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é qui nous permet de reprendre les sessions.

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 exécutés dans Screen continueront de s’exécuter lorsque leur fenêtre n’est pas visible même si vous êtes déconnecté.

Installer Linux GNU Screen

Le package screen est préinstallé sur la plupart des distributions Linux actuelles.
Vous pouvez vérifier s’il est installé sur votre système en tapant : .

Si vous n’avez pas installé screen, vous pouvez facilement l’installer en utilisant le gestionnaire de paquets en :
sudo apt update && sudo apt install screen

Démarrer une session d'écran

Pour démarrer une session d’écran, tapez simplement dans votre console.
Pour démarrer une session nommée, utilisez . 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 fenêtre unique contenant un shell. Vous pouvez avoir plusieurs fenêtres dans une session Screen. Pour créer une nouvelle fenêtre avec le type de shell , le premier numéro disponible de la plage lui sera attribué.

Vous trouverez ci-dessous quelques-unes des commandes les plus courantes pour la gestion des fenêtres d’écran Linux :

  • 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 la région actuelle horizontalement en deux régions.
  • Ctrl+a | Diviser la région actuelle verticalement en deux régions.
  • Ctrl+a tab Déplacez le focus d’entrée vers la région suivante.
  • Ctrl+a Ctrl+a Basculer entre la fenêtre actuelle et la fenêtre 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/rattacher de la session d'écran Linux

Vous pouvez vous déconnecter de la session d’écran à tout moment en tapant : Ctrl+a d
Le programme exécuté dans la session d’écran continuera à s’exécuter après que vous vous soyez déconnecté de la session.
Pour reprendre votre session d’écran, utilisez screen -r
Pour trouver la liste des identifiants de session avec lesquels les sessions d’écran en cours d’exécution sont en cours, utilisez screen -ls
Pour reprendre votre session d’écran avec l’ID, utilisez screen -r [session ID]

Options et raccourcis clavier

Options
  • -a: Il force toutes les capacités dans le termcap de chaque fenêtre.
  • -A -[r|R]: Il adapte toutes les fenêtres à la nouvelle largeur d’affichage & hauteur.
  • -c fichier : Il lit le fichier de configuration au lieu de ‘.screenrc’.
  • -d (-r): Il détache l’écran en cours d’exécution ailleurs (et le rattache ici).
  • -dmS nom : Il démarre en tant que démon : Session d’écran en mode détaché.
  • -D (-r) : Il se détache et se déconnecte à distance (et se rattache ici).
  • -D -RR: Il fait tout ce qui est nécessaire pour obtenir une session d’écran.
  • -e xy: Il change les caractères de commande.
  • -f: Il active le contrôle de flux, -fn = off, -fa = auto.
  • -h lignes : Il définit la taille du tampon de l’historique de défilement.
  • -i: Il interrompt la sortie plus tôt lorsque le contrôle de flux est activé.
  • -l: Il rend le mode de connexion activé (mise à jour /var/run/utmp), -ln = off.
  • -ls [match]: Il affiche tous les écrans attachés.
  • -L: Il active la journalisation de sortie.
  • -m: Il ignore la variable $STY et crée une nouvelle session d’écran.
  • -O: Il choisit la sortie optimale plutôt que l’émulation exacte du vt100.
  • -p fenêtre : Il présélectionne la fenêtre nommée si elle existe.
  • -q: Démarrage silencieux. Quitte avec un code de retour différent de zéro en cas d’échec.
  • -Q: Cette commande enverra la réponse à la sortie standard du processus d’interrogation.
  • -r [session]: Il se rattache à un processus d’écran détaché.
  • -R: Il se rattache si possible, sinon démarre une nouvelle session.
  • -S sockname : Il nomme cette session .sockname au lieu de …
  • -t titre : Il définit le titre. (nom de la fenêtre).
  • -T terme : Il utilise le terme $TERM pour les fenêtres, plutôt que « écran ».
  • -U: Il indique à l’écran d’utiliser l’encodage UTF-8.
  • -v: Il affiche « Version d’écran 4.06.02 (GNU) 23-Oct-17 ».
  • -x: Il se fixe sur un écran non détaché. (Mode multi-affichage).
  • -X: Il s’exécute comme une commande d’écran dans la session spécifiée.
Touches de raccourci
  • Ctrl-a + c : Cela crée une nouvelle fenêtre.
  • Ctrl-a + w : Affiche la liste de toutes les fenêtres actuellement ouvertes.
  • Ctrl-a + A : Il renomme les fenêtres actuelles. Le nom apparaîtra lorsque vous listerez la liste des fenêtres ouvertes avec Ctrl-a + w.
  • Ctrl-a + n : Passe aux fenêtres suivantes.
  • Ctrl-a + p : Cela revient aux fenêtres précédentes.
  • Ctrl-a + Ctrl-a : Revient aux dernières fenêtres utilisées.
  • Ctrl-a + k : Ferme les fenêtres actuelles (kill).
  • Ctrl-a + S : Il divise les fenêtres actuelles horizontalement. Pour basculer entre les fenêtres, appuyez sur Ctrl-a + Tab.
  • Ctrl-a + |: Il divise les fenêtres actuelles verticalement.
  • Ctrl-a + X : Fermer la fenêtre fractionnée active
  • Ctrl-a + Q : Fermer toutes les fenêtres fractionnées
  • Ctrl-a + d: Il détache une session d’écran sans l’arrêter.
  • Ctrl-a + r : Il rattache une session d’écran détachée.
  • Ctrl-a + [: Cela démarre le mode copie.
  • Ctrl-a + ]: Il colle le texte copié.
Retour en haut