Comment interpréter les valeurs des colonnes de statistiques dans PS sous Linux/Ubuntu
Si vous explorez votre système Linux ps
et remarquez que la colonne STAT est composée d’un amas de lettres étranges, pas d’inquiétude. Elle vous indique en fait ce que fait chaque processus, si vous savez la lire. Ces informations peuvent s’avérer très utiles pour résoudre des problèmes, comprendre pourquoi votre système semble lent ou simplement surveiller ce qui se passe en arrière-plan.
Honnêtement, décoder cette petite colonne permet de comprendre tous ces identifiants de processus et ces utilisations de ressources. C’est un peu comme apprendre le langage secret de votre machine, et une fois maîtrisé, vous commencerez à identifier des schémas ou des anomalies qui pourraient se cacher sous le capot. De plus, c’est pratique pour repérer les processus zombies ou les tâches bloquées. Je ne sais pas exactement pourquoi cela fonctionne ainsi, mais parfois, un simple coup d’œil à STAT peut révéler un processus bloqué qui monopolise les ressources ou qui dort indéfiniment.
Comment corriger la colonne STAT dans la commande Linux PS
Ouvrez le terminal
Tout d’abord, vous avez besoin d’un terminal. Si vous utilisez Ubuntu ou Debian, recherchez simplement « Terminal » dans le menu de votre application. Sur Fedora ou CentOS, c’est pareil. Vous pouvez également utiliser Ctrl + Alt + T— ; cela en ouvre généralement un. S’il s’agit d’un serveur ou d’un ordinateur distant, vous pouvez vous connecter via SSH. Ensuite, vous êtes prêt à explorer les informations sur les processus.
Exécutez la commande ps aux et vérifiez la colonne STAT
Tapez ceci et appuyez sur Enter:
ps aux
Cette commande listera tous les processus avec leurs détails : utilisateur, processeur, mémoire et, surtout, la colonne STAT. Si vous souhaitez en savoir plus sur des processus spécifiques, combinez-la avec un grep. Par exemple, ps aux | grep process_name
. La colonne STAT vous indiquera si un processus est en veille, en cours d’exécution ou même zombie.
Déchiffrer les codes STAT courants
La colonne STAT est un amas de lettres, un peu cryptique, mais une fois qu’on comprend leur signification, c’est assez simple. Les plus courantes sont :
R
— En marche ou prêt à démarrer. Les mains du processus sont aux commandes.S
— En veille, en attente d’un événement, comme une entrée ou des données du disque. Généralement sans problème, sauf si l’appareil est en veille permanente.D
— Veille ininterrompue, généralement sur les E/S matérielles (comme l’attente sur le disque).Difficile à arrêter, donc si vous voyez beaucoup de D, cela peut être le signe d’un problème de disque ou de matériel.Z
— Zombie, signifiant que le processus est terminé, mais qu’il est toujours en attente, en attendant que le parent nettoie. Les zombies peuvent s’accumuler si les processus parents ne gèrent pas correctement les complétions enfants.T
— Arrêté, peut-être via Ctrl + Z ou un débogueur. Il est en pause, pas mort.
Sur certaines configurations, vous pourriez voir des codes combinés, comme Ss
. Il s’agit du mode veille et du mode leader de session. C’est assez normal, sauf si le code est bloqué à jamais.
Identifiez les informations supplémentaires avec des codes d’état supplémentaires
Quelques symboles supplémentaires à côté des lettres principales ajoutent plus de contexte :
s
— Le processus est un leader de session, généralement shell ou init.+
— Au premier plan, attaché à votre terminal.l
— Processus multithread (hé, plus d’un thread qui s’exécute).n
— Faible priorité, belle valeur définie plus bas, donc il ne se bat pas pour les cycles CPU.
Connaître cela permet de diagnostiquer pourquoi un processus se comporte de manière étrange ou monopolise des ressources.
À quoi vous attendez-vous après avoir lu la chronique STAT ?
Si vous recherchez quelque chose de suspect, les états des processus peuvent signaler des problèmes, comme un processus zombie (Z) encombrant la sortie ou un processus bloqué en veille ininterrompue (D).C’est utile pour un diagnostic rapide sans avoir à installer d’outils de surveillance sophistiqués. Parfois, la présence de plusieurs D ou de T bloqués indique des goulots d’étranglement matériels ou des processus qui ne répondent pas. Curieusement, sur une configuration, les processus zombies semblent persister indéfiniment jusqu’au redémarrage, tandis que sur une autre, ils se nettoient souvent d’eux-mêmes si vous supprimez leur parent.
Conseils supplémentaires et pièges courants
Il est important de noter que parfois, ce que vous pensez bloqué peut simplement être en attente ou en veille. Cependant, les processus zombies ( Z
) indiquent souvent que le parent n’a pas attendu correctement, ou que vous avez accidentellement arrêté un processus qui n’a pas été nettoyé. Pour vérifier si c’est le cas, vérifiez l’ID du processus parent ( PPID ) avec.ps -o ppid= -p
Le tri est également très utile. Courez ps aux --sort=-%cpu
voir les fichiers inutiles ou ps aux --sort=-%mem
les éléments qui gaspillent la mémoire. Tout le monde ne le fait pas, mais cela change la donne en cas de problème.
Conclure
Maîtriser la colonne STAT s’avère très utile pour un dépannage rapide et la gestion du système. C’est un petit savoir-faire qui, une fois assimilé, peut vous éviter bien des soucis. Si vous vous lancez dans la création de scripts, la surveillance ou si vous êtes simplement curieux de savoir comment fonctionnent les processus, sa maîtrise est essentielle.
Résumé
- Découvrez ce que signifient les principaux états du processus (
R, S, D, Z, T
). - Vérifiez si les processus zombies s’accumulent.
- Utilisez des filtres comme
ps aux | grep [name]
et des commandes de tri pour plus de clarté. - Sachez que les symboles supplémentaires donnent plus d’indices sur les rôles du processus.
Note finale
Espérons que cela rende les codes STAT moins intimidants et permette de repérer les problèmes plus rapidement. Cela peut paraître anodin, mais comprendre ces états est un bon pas vers un dépannage Linux de haut niveau. Sur certaines machines, il a fallu plusieurs essais pour que la situation se stabilise après avoir géré des zombies ou des états sans réponse, mais cela fait partie de l’apprentissage. Espérons que cela vous fera gagner du temps ou vous évitera un redémarrage complet !