Surveillance en temps réel des processus
Alors que la commande ps
fournit un instantané des processus à un moment donné, il peut arriver que vous ayez besoin de surveiller les processus en continu. Dans cette étape, nous allons explorer des outils de surveillance en temps réel des processus.
Utilisation de la commande top
La commande top
offre une vue dynamique en temps réel du système en cours d'exécution. Elle affiche des informations sommaires sur le système ainsi qu'une liste des processus ou des threads actuellement gérés par le noyau Linux.
Exécutez la commande suivante :
top
Vous verrez quelque chose comme :
top - 17:15:23 up 30 min, 1 user, load average: 0.00, 0.01, 0.05
Tasks: 31 total, 1 running, 30 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 1975.1 total, 1558.7 free, 180.4 used, 236.1 buff/cache
MiB Swap: 975.0 total, 975.0 free, 0.0 used. 1651.3 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 8988 3208 2556 S 0.0 0.2 0:00.07 init.sh
22 root 20 0 39528 8596 6088 S 0.0 0.4 0:00.20 supervisord
23 root 20 0 12128 6788 5864 S 0.0 0.3 0:00.00 sshd
...
La sortie est divisée en deux parties :
- Sommaire du système (5 premières lignes)
- Liste des processus (triée par utilisation du CPU par défaut)
Pour quitter top
, appuyez sur la touche q
.
Comprendre la sortie de top
Le sommaire du système fournit :
- Le temps de fonctionnement et les moyennes de charge
- Le nombre de tâches par état (en cours d'exécution, en sommeil, arrêtées, zombies)
- La répartition de l'utilisation du CPU
- L'utilisation de la mémoire et de l'échange
La liste des processus montre :
- PID : Identifiant du processus
- USER : Utilisateur propriétaire
- PR : Priorité
- NI : Valeur de nice
- VIRT : Mémoire virtuelle utilisée
- RES : Mémoire résidente utilisée
- SHR : Mémoire partagée
- S : État du processus
- %CPU : Utilisation du CPU
- %MEM : Utilisation de la mémoire
- TIME+ : Temps CPU utilisé
- COMMAND : Nom de la commande
Commandes interactives dans top
Pendant que top
est en cours d'exécution, vous pouvez utiliser diverses commandes au clavier pour interagir avec elle :
- Appuyez sur
M
pour trier par utilisation de la mémoire
- Appuyez sur
P
pour trier par utilisation du CPU
- Appuyez sur
k
suivi d'un PID pour tuer un processus
- Appuyez sur
h
pour obtenir de l'aide
Essayez d'appuyer sur M
pendant que top
est en cours d'exécution pour voir les processus triés par utilisation de la mémoire.
Utilisation de la commande watch avec ps
Une autre approche pour la surveillance en temps réel consiste à utiliser la commande watch
avec ps
. Cela exécute une commande périodiquement et affiche la sortie, vous permettant de voir les changements au fil du temps.
watch -n 1 'ps -eo pid,ppid,cmd,%cpu,%mem --sort=-%cpu | head -n 6'
Cela se rafraîchit toutes les 1 secondes et montre les 5 processus consommateurs de CPU les plus importants.
Pour quitter watch
, appuyez sur Ctrl+C
.
La combinaison de ps
avec des utilitaires comme watch
vous offre des capacités puissantes pour surveiller en temps réel les processus de votre système.