Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Screen

Introduction

Screen (GNU/Screen) est un Multiplexeur permettant d'ouvrir plusieurs terminaux (on dit des sessions) à partir d'un seul.

Cela permet de s'attacher et de se détacher d'une commande en la laissant active dans la sessionscreen créée.

Via SSH, screen peut ouvrir une session screen sur un pc distant et de laisser active une commande en exécution tout en se déconnectant totalement du pc distant.
Puis, ultérieurement, de revenir sur cette commande dans la même session screen.

Idéal pour intervenir sur un pc distant (un serveur souvent) ou pour aider un utilisateur qui pourra suivre visuellement vos actions sur son pc en ouvrant la même session screen !

Associés, SSH et screen sont le nec plus ultra sécuritaire et efficace pour interagir entre des pc.

Installation

Rien de plus simple. Il suffit d'utiliser votre gestionnaire de paquets préférés et d'installer le paquet screen.
Par exemple, avec apt-get :

apt-get update && apt-get install screen

Utilisation

Une fois l'installation complétée, vous pouvez commencer à utiliser screen.

Screen - Ouvrir

Pour lancer screen dans une Console (ou un Terminal), il suffit de rédiger la commande :

screen

Au lancement de screen, un message s’affiche à l’écran indiquant la version utilisée ainsi que ce programme est sous licence GPL.

Message affiché :
Screen version 4.02.01 (GNU) 28-Apr-14
 
Copyright (c) 2010 Juergen Weigert, Sadrul Habib Chowdhury
Copyright (c) 2008, 2009 Juergen Weigert, Michael Schroeder, Micah Cowan,
Sadrul Habib Chowdhury
Copyright (c) 1993-2002, 2003, 2005, 2006, 2007 Juergen Weigert, Michael
Schroeder
Copyright (c) 1987 Oliver Laumann
 
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 3, or (at your option) any later version.
 
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
You should have received a copy of the GNU General Public License along with
this program (see the file COPYING); if not, see http://www.gnu.org/licenses/,
or contact Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA  02111-1301  USA.
 
 
Send bugreports, fixes, enhancements, t-shirts, money, beer & pizza to
screen-devel@gnu.org
 
 
Capabilities:
+copy +remote-detach +power-detach +multi-attach +multi-user +font +color-256
+utf8 +rxvt +builtin-telnet
 
                  [Press Space or Return to end.]

images.debian-facile.org/file-Ra38c6907fa06d0e4da3bf4c5913dc7f0

Image disparue ! smolski 18/03/2012

Il ne reste plus qu’à appuyer sur la touche Espace ou sur la touche ↵ Entrée pour se retrouver dans la fenêtre de screen.

Il n'y pas de différence, mais vous êtes bien dans screen avec ses commandes spécifiques d'utilisation supplémentaires et non plus dans votre ancienne console.

Screen - Quitter

Pour sortir de screen rédigez :

 exit

ou bien appuyez sur la combinaison des touches clavier Ctrl+D

Nous verrons plus loin qu'il existe d'autres manières de sortir de screen.

Remarque

Vous devez taper autant de fois ces commandes que vous avez de fenêtres ouvertes. Un message apparaît finalement vous indiquant que vous avez bien quitté screen :

[screen is terminating]

Screen - Options

Option : Ctrl+a - gestion des fenêtres

Ctrl+a c

Pour créer une nouvelle fenêtre, il suffit de taper la combinaison de touches Ctrl+A+C

Il est à noter qu'en plus de créer une nouvelle fenêtre, screen nous emmène directement dans celle-ci.

Ctrl+a w

Screen étant un gestionnaire de fenêtres, il permet donc d’ouvrir et de fermer des fenêtres. Il va même jusqu'à indiquer dans quelle fenêtre nous nous trouvons.

Tapez Ctrl+A+W

Résultat

Une petite ligne s’affiche temporairement en bas de l'écran où l'on peut lire par exemple ceci :

 0-$ bash  1*$ bash (l'étoile * à côté du 1 indique que nous sommes bien dans la deuxième fenêtre)

Signification

Nous avons tout simplement demandé à screen de nous dire où nous étions, et il nous a répondu … à sa façon.

Chaque fenêtre de screen a :

  1. un numéro de session screen, la première commence à 0,
  2. un astérisque ( * ) qui indique dans quelle session screen nous nous situons actuellement,
  3. un signe de dollar ( $ )
  4. le nom du shell utilisé.

Pour se promener entre les différentes fenêtres, il existe quatre solutions :

Pour aller à la fenêtre suivante Ctrl+A+N

pour aller à la fenêtre précédente Ctrl+A+P

Ctrl+a [0 (zéro, le chiffre) - 9]

pour naviguer entre les dix fenêtres de screen

Ctrl+A+0

Ctrl+A+1

Ctrl+A+9

Au choix. :-)

Ctrl+a ' (apostrophe)

Pour aller dans une des fenêtres par le numéro Ctrl+A+'

Puis, tapez dans le prompt le numéro de la fenêtre que vous désirez atteindre.

Ctrl+a " (guillemets doubles)

Pour aller dans une des fenêtres visuellement Ctrl+A+

Propose la liste des différentes fenêtres et nous pouvons y choisir au clavier, par les flèches de direction, une session où nous situer en la validant.

Pour un clavier qwerty

Ctrl+a puis shift (flèche pour les majuscules) ' (apostrophe)

Pour avoir la liste des différentes fenêtres Ctrl+Alt+Maj+'

Propose la liste des différentes fenêtres, à l'identique de l'option Ctrl+A+W

Option : -S nommer la session screen

L'option -S à l'ouverture de screen permet de donner un nom explicite à la session que nous ouvrons.

Ainsi, par exemple, nous pouvons ouvrir une session screen nommée user ainsi :

 screen -S user

Ceci crée une session screen nommée user.

Nous pouvons par exemple y lancer une tâche un peu longuette, nous déconnecter pendant cette tâche sans l'arrêter.

Ctrl+A+D

Pour y revenir, il suffira de taper :

 screen -r user

Et vérifier la bonne continuité ou faire cesser la commande qui y aura été lancée précédemment en arrêtant screen par C + D

ou :

 exit

Option : -r

Pour revenir à une session que vous avez ouverte et laissé active :

 screen -r

Et vous y serez de retour directement.

Si vous avez plusieurs sessions en cours, vous pourrez ensuite en consulter la liste avec Ctrl+A+

Comme indiqué dans les options -a

Ajouter une bare de status ( hardstatus )

Une barre de status qui affiche les fenêtres totalement personnalisable; Ajouter ceci à vote fichier de configuration screen perso : .screenrc :

hardstatus alwayslastline 
hardstatus string '%{= kG}%{C}Screen: %{c}%{= kG}[%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{C} %d-%m %{W}%c %{g}]'

Liens et remerciements

Merci à martin de nous avoir initié ce si bô tutô ! Yep ! ;-)

1) N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
doc/autres/screen.txt · Dernière modification: 26/06/2016 14:17 par MicP

Pied de page des forums

Propulsé par FluxBB