Comment utiliser le multiplexeur de terminal d'affichage sous Linux

Vous souhaitez exécuter plusieurs sessions d'écran virtuel à partir d'une seule console de terminal ? Ou empêcher la connexion internet d'interrompre la session console via SSH ? Si tel est le cas, accueillez dès aujourd'hui GNU Screen Terminal Multiplexer dans votre boîte à outils !

Utilisation de l'utilitaire d'affichage GNU

L'utilitaire GNU Screen pour Linux est un multiplexeur d'écran polyvalent qui vous permet de démarrer plusieurs sessions d'écran virtuel (considérez-les comme des fenêtres de console supplémentaires) à partir de votre session de terminal actuelle.

La mise en route est facile. Vous pouvez installer l'outil GNU Screen en utilisant |__+_| depuis la ligne de commande de votre terminal :

Installation de l'écran GNU

Si vous utilisez un système d'exploitation basé sur RedHat / RPM, remplacez 'apt' par 'yum' dans la commande ci-dessus.

Pour ouvrir une nouvelle console virtuelle, vous pouvez maintenant simplement taper |__+_| et appuyez sur Entrée, ce qui vous présentera un écran de démarrage :

Écran de démarrage de l'écran GNU

Appuyez simplement sur la barre d'espace ou revenez en arrière pour fermer l'écran d'accueil. L'invite de commande apparaîtra pour revenir, mais vous êtes maintenant dans une session d'écran virtuel. Considérez-le comme une session de terminal alternative, s'exécutant dans la session de terminal précédente.

L'une des grandes choses à propos de l'écran GNU est que même si la session de terminal principale/parent devait échouer ou planter d'une manière ou d'une autre (par exemple, en raison d'une connexion réseau perdue), et aussi lorsque vous fermez ou terminez la session de terminal parent /parent, cette session d'écran fonctionnera toujours !

Il est facile de vérifier si nous sommes actuellement dans une session d'écran ou non :

Vérifiez s'il s'agit d'une session d'écran GNU ou non

Cette instruction if vérifie si le |__+_| la variable est définie ou non. Si le |__+_| la variable d'environnement est définie, il s'agit donc d'une session d'écran.

Alors, comment revenons-nous à notre session principale / terminal principal ? Cela peut être fait en utilisant une combinaison de touches que l'écran GNU écoutera en arrière-plan. Appuyez simplement sur CTRL + A> CTRL + D. Peu importe que vous relâchiez ou non la touche CTRL pendant cette opération.

Vous verrez quelque chose comme cette sortie :

Quitter une session d'écran GNU

Cela nous indique également que nous nous sommes seulement déconnectés de la session d'écran virtuel GNU : elle n'est pas terminée et nous pouvons nous y reconnecter si nous le souhaitons. Même si pour une raison quelconque la session principale/parente avait été fermée, la session d'écran virtuel ne serait pas terminée et nous pouvons nous y reconnecter.

Pour se reconnecter à la session, nous pouvons donner une simple commande :

Se reconnecter à une session d'écran GNU

Confirmer cette commande nous ramènera simplement à la session d'écran virtuel que nous avions en cours d'exécution. Notez que nous utilisons l'ID de processus pertinent (tel qu'indiqué lorsque nous avons quitté la session d'écran) pour nous reconnecter à la session d'écran virtuel. Cela montre également immédiatement comment nous pouvons démarrer un nombre indéfini de sessions d'écran (bien que chacune consomme une certaine quantité de ressources) et nous connecter à celle que nous aimons en utilisant le |_+_| J'envoie.

Nous pouvons en savoir plus sur les options que nous utilisons pour cette commande dans le manuel d'écran en ligne :

Options de clarification manuelle de l'écran rouge

Pour un aperçu plus large de l'écran et de ses nombreuses fonctionnalités, vous pouvez utiliser le |__+_| J'envoie:

Manuel GNU Screen Linux

Si nous voulons voir une liste des sessions d'écran en cours d'exécution sur la machine, nous pouvons émettre un |_+_| J'envoie:

Liste des écrans GNU

Remarquez comment la session est marquée comme « Détachée » ou « Attachée » selon que vous y êtes toujours connecté quelque part ou non.

Parfois, vous souhaiterez peut-être revenir dans une session d'écran, par exemple lorsque plus de lignes de sortie ont été générées que le nombre de lignes disponibles dans la taille de la fenêtre du terminal. Vous vous attendriez à ce que ce soit aussi simple que d'utiliser votre souris pour faire défiler de haut en bas, mais ce n'est pas le cas.

Au lieu de cela, vous pouvez utiliser une combinaison de touches CTRL + ESC pour activer le mode copie (bien qu'aucune copie réelle ne soit effectuée si vous faites simplement défiler), et maintenant votre souris ainsi que les touches de curseur haut/bas standard fonctionneront très bien. . Lorsque vous avez fini de visualiser (et/ou de copier si vous le souhaitez, par exemple avec la souris en sélectionnant et en copiant normalement), appuyez simplement à nouveau sur la touche ESC pour annuler le mode copie.

Parfois, un programme exécuté à l'intérieur d'un écran peut se bloquer, par exemple en raison d'une erreur de programme, de mémoire ou de disque. Si cela se produit, l'écran affichera 'Mort' sur le |_+_| production:

Une session d'écran GNU a échoué

À ce stade, nous pouvons annuler la session d'écran mort en émettant un |__+_| J'envoie:

Une session d'écran GNU supprimée

Dans cet article, nous avons exploré comment installer l'utilitaire d'affichage GNU, comment démarrer une nouvelle session d'affichage virtuel en l'utilisant et comment se déconnecter et se reconnecter à une session d'affichage existante. Enfin, voyons comment parcourir les sessions d'écran et comment gérer les sessions d'écran mortes.

Qu'est-ce que tu penses?