Gestion avancée des processus
Linux propose des commandes supplémentaires pour gérer les processus en plus des commandes de base ps
et kill
. Ces outils offrent plus de flexibilité et de commodité pour identifier et terminer des processus.
La commande pgrep
La commande pgrep
vous permet de trouver des processus par leur nom plutôt que de devoir examiner visuellement la sortie de ps
:
pgrep sleep
Cette commande trouvera tous les processus dont le nom contient "sleep" et affichera leurs PID.
La commande pkill
La commande pkill
combine les fonctionnalités de pgrep
et de kill
- elle trouve des processus par leur nom et leur envoie un signal :
## Démarrer deux processus sleep
sleep 300 &
sleep 300 &
## Tuer tous les processus sleep
pkill sleep
Vérifiez que tous les processus sleep ont été terminés :
ps | grep sleep
La commande killall
À l'instar de pkill
, la commande killall
termine des processus par leur nom :
## Démarrer deux autres processus sleep
sleep 300 &
sleep 300 &
## Tuer tous les processus sleep
killall sleep
Vérifiez encore une fois :
ps | grep sleep
Priorité des processus avec nice
et renice
Linux vous permet également de contrôler la priorité des processus en utilisant les commandes nice
et renice
.
Démarrons un processus avec une priorité plus basse :
nice -n 10 sleep 300 &
La valeur de nice
va de -20 (priorité la plus élevée) à 19 (priorité la plus basse). La valeur par défaut est 0. Seul l'utilisateur root peut définir des valeurs de nice
négatives.
Vous pouvez modifier la priorité d'un processus en cours d'exécution en utilisant renice
:
sleep_pid=$!
echo "Sleep process ID with lower priority: $sleep_pid"
renice -n 15 -p $sleep_pid
Vérifions la nouvelle priorité :
ps -o pid,nice,cmd -p $sleep_pid
Enfin, terminons ce processus :
kill $sleep_pid
Ces commandes avancées de gestion des processus offrent des moyens plus efficaces de gérer plusieurs processus et de contrôler les ressources système, ce qui est particulièrement utile sur les systèmes chargés ou lors de la résolution de problèmes de performance.