Travailler avec Screen
Guide pour exécuter et gérer des programmes en arrière-plan sur un serveur Linux.
Screen est un puissant multiplexeur de terminal qui vous permet d'exécuter des programmes dans des sessions détachées, de vous déconnecter sans tuer le processus, et de vous y reconnecter plus tard. C'est particulièrement utile lorsque vous travaillez sur un VPS ou des serveurs dédiés via SSH : vous pouvez lancer des tâches longues (mises à jour, parsing, minage ou applications côté serveur), vous déconnecter, et reprendre la main même après une coupure de connexion.
Screen crée des terminaux virtuels (fenêtres) dans lesquels les commandes s'exécutent, et vous permet de basculer entre eux ou de les gérer indépendamment.
Installation
Ubuntu / Debian :
sudo apt update
sudo apt install screen -y
CentOS / RHEL / AlmaLinux / Rocky :
sudo yum install screen -y
# ou
sudo dnf install screen -y
Utilisation de base
- Démarrer une nouvelle session :
screen
Vous verrez soit une invite de commande, soit un écran de bienvenue (appuyez sur Espace ou Entrée).
- Lancez votre commande (par ex.
top,htop,python3 script.py, etc.). - Détacher la session (sans la terminer) :
Ctrl + a, puis d
Vous verrez : [detached from ...]
- Se reconnecter plus tard :
screen -r
Si vous avez plusieurs sessions — listez-les d'abord :
screen -ls
Exemple de sortie :
There are screens on:
1234.pts-0.server (Detached)
5678.job1 (Detached)
2 Sockets in /var/run/screen/S-root.
Se reconnecter à une session spécifique :
screen -r 1234
ou par nom :
screen -r job1
Commandes utiles dans Screen
- Créer une nouvelle fenêtre (dans une session) : Ctrl + a, puis c
- Basculer entre les fenêtres : Ctrl + a, puis numéro de fenêtre (0–9) ou Ctrl + a, puis « (liste des fenêtres)
- Renommer la fenêtre active : Ctrl + a, puis A → saisir le nouveau nom
- Fermer la fenêtre active : Ctrl + a, puis k → confirmer avec y
- Quitter toute la session Screen : Ctrl + a, puis : → saisir quit → Entrée
- Quitter le mode copie (si vous avez activé le mode défilement) : Échap ou q
Défilement de la sortie (mode copie)
Si la sortie d'une commande dépasse l'écran :
- Appuyez sur Ctrl + a, puis [ — vous entrez en mode copie.
- Utilisez les touches fléchées, Page Haut/Bas ou les touches vi (h,j,k,l) pour défiler.
- Appuyez sur Échap ou q pour quitter.
Nos produits et services
Personnaliser Screen (~/.screenrc)
Créez ou modifiez ~/.screenrc :
Exemple de configuration utile :
# Désactiver le message de bienvenue
startup_message off
# Toujours afficher la barre de statut en bas
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{=kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B}%Y-%m-%d %{W}%c %{g}]'
# Créer automatiquement des fenêtres au démarrage
screen -t Main
screen -t Logs
chdir /var/log
screen -t Backup
Après l'enregistrement, les nouvelles sessions disposeront d'une barre de statut soignée et de fenêtres préconfigurées.
Conseils pratiques
- Si une session se bloque — reconnectez-vous en mode multi-utilisateur :
screen -x
- Pour lancer Screen automatiquement à la connexion SSH — ajoutez ceci dans
~/.bashrc:
if [ -z "$STY" ]; then screen -x || screen -S main; fi
- Screen est idéal pour les processus de longue durée (mises à jour d'OS, compilation, traitement de données volumineuses, bots, etc.).
Nos produits et services
Aide
Une question ou besoin d'un coup de main ? Écrivez-nous via le système de tickets — nous sommes toujours là pour vous aider !