Qu'est-ce qu'un processus en arrière-plan ?
Un processus d'arrière-plan est un processus/une commande qui est démarré à partir d'un terminal et s'exécute en arrière-plan , sans interaction de l'utilisateur .
Certaines commandes sous Linux prennent du temps. Afin de ne pas perdre notre temps lorsque nous devons utiliser de telles commandes, nous pouvons les mettre en arrière-plan du terminal et continuer notre travail. Le plus souvent, cela se produit lorsque nous sommes connectés au terminal via SSH et que nous ne voulons pas ouvrir dix autres fenêtres inutiles.
Dans cet article, nous parlerons des processus d'arrière-plan sous Linux et nous vous montrerons comment démarrer une commande en arrière-plan et comment maintenir le processus en cours après la fermeture de la session shell.
Qu'est-ce que l'outil d'écran ?
Commande d'écran Linux est une commande très utile qui offre la possibilité d'utiliser plusieurs fenêtres shell (sessions) à partir d'une seule session SSH. Lorsque la session est détachée ou qu'il y a une interruption du réseau, le processus qui est lancé dans un écran la session continuera de fonctionner et vous pourrez vous rattacher à l'écran session à tout moment.
Comment installer et exécuter screen ?
Nous allons d'abord installer screen sur notre distribution.
# Install on Ubuntu \ Debian
sudo apt-get install screen
# Install on FreeBSD
pkg install screen
# Install on Arch Linux
sudo pacman -S screen
# Install on RHEL \ CentOS
yum install screen
# Install on Open Suse
zypper install screen
Code language: Bash (bash)
Pour utiliser la commande, nous devons écrire simplement "screen », et nous avons la possibilité d'ajouter un nom de processus qui créera un « nom de l'écran -s “
# Create a new instance
screen -S test
Code language: PHP (php)
Vous aurez une nouvelle fenêtre comme celle-ci
Vous pouvez maintenant exécuter le script ou la commande ou le processus dont vous avez besoin dans cette fenêtre, pour l'exemple, nous allons exécuter la commande top
# Run top command
top
Code language: PHP (php)
Maintenant, pour laisser le haut ouvert sur notre écran et revenir au terminal, nous devons appuyer sur CTRL + A et après la lettre D .
Mais attendez, comment pouvons-nous voir l'état de notre écran de test en cours avec la commande top ? Tapez simplement screen -ls :
# Check current screen state
screen -ls
Code language: PHP (php)
Vous pouvez voir que nous avons une session d'écran nommée test, nous sommes détachés de la session mais le processus fonctionne toujours.
Pour rattacher à un écran, utilisez la commande suivante, en remplaçant le numéro ci-dessous par votre propre ID de processus. Dans cet exemple, le nombre est 65735
# Reattach to screen session
screen -r 65735
Code language: PHP (php)
Pour quitter et détruire la session, nous pouvons utiliser la sortie commande dans la session.
Si nous le voulons, nous pouvons tuer le processus à distance en utilisant l'identifiant comme dans cet exemple
# Kill process 65735
kill 65735
Code language: PHP (php)
En conclusion, on peut dire que la commande "screen" est facile à utiliser et à retenir, elle est valable dans presque toutes les distributions et surtout elle est fiable.