Creative Saplings

30 Exemples utiles de «commande ps» pour la surveillance des processus Linux

janvier 30, 2021
No Comments

ps (état des processus) est un utilitaire Unix / Linux natif pour afficher des informations concernant une sélection des processus en cours d’exécution sur un système: il lit ces informations à partir des fichiers virtuels du système de fichiers / proc. C’est l’un des utilitaires importants pour l’administration système spécifiquement sous surveillance de processus, pour vous aider à comprendre ce qui se passe sur un système Linux.

Il a de nombreuses options pour manipuler sa sortie, mais vous trouverez un petit nombre d’entre eux pratiquement utiles pour un usage quotidien.

À lire aussi: Tout ce que vous devez savoir sur les processus sous Linux

Dans cet article, nous examinerons 30 exemples utiles de commandes ps pour surveiller les processus en cours d’exécution actifs sur un système Linux.

Notez que ps produit une sortie avec une ligne d’en-tête, qui représente la signification de chaque colonne d’informations, vous pouvez trouver la signification de toutes les étiquettes dans le ps man page.

Lister tous les processus dans le shell actuel

1. Si vous exécutez la commande ps sans aucun argument, elle affiche les processus pour le shell actuel.

$ ps 
Liste des processus en cours d’exécution

Imprimer tous les processus dans différents formats

2. Afficher tous les processus actifs sur un système Linux au format générique (Unix / Linux).

$ ps -AOR$ ps -e
Lister les processus au format standard

3. Afficher tous les processus au format BSD.

$ ps auOR$ ps axu
Lister les processus au format BSD

4. Pour créer une liste au format complet, ajoutez l’indicateur -f ou -F.

$ ps -efOR$ ps -eF
Répertorier les processus au format longue liste

Afficher les processus en cours d’exécution de l’utilisateur

5. Vous pouvez sélectionner tous les processus que vous possédez (exécutant de la commande ps, root dans ce cas), tapez:

$ ps -x 

6. Pour afficher les processus d’un utilisateur par ID utilisateur réel (RUID) ou par nom, utilisez l’indicateur -U.

$ ps -fU tecmintOR$ ps -fu 1000
Liste des processus utilisateur par ID

7. Pour sélectionner les processus d’un utilisateur par ID utilisateur effectif (EUID) ou par nom, utilisez l’option -u.

$ ps -fu tecmintOR$ ps -fu 1000

Imprimer tous les processus exécutés en tant que racine (ID réel et efficace)

8. La commande ci-dessous vous permet de visualiser tous les processus exécutés avec les privilèges d’utilisateur root (véritable & ID effectif) au format utilisateur.

$ ps -U root -u root 

Afficher les processus en cours d’exécution de l’utilisateur racine

Afficher les processus de groupe

9. Si vous souhaitez répertorier tous les processus appartenant à un certain groupe (ID de groupe réel (RGID) ou nom), saisissez.

$ ps -fG apacheOR$ ps -fG 48
Afficher les processus de groupe

10. Pour lister tous les processus appartenant au nom de groupe effectif (ou session), saisissez.

$ ps -fg apache

Afficher les processus par PID et PPID

11. Vous pouvez lister les processus par PID comme suit.

$ ps -fp 1178
Lister les processus par PID

12. Pour sélectionner le processus par PPID, saisissez.

$ ps -f --ppid 1154
Processus de liste par PPID

13. Effectuez votre sélection à l’aide de la liste PID.

$ ps -fp 2226,1154,1146
Liste Processus par PID

Affichage des processus par TTY

14. Pour sélectionner des processus par tty, utilisez l’indicateur -t comme suit.

$ ps -t pst/0$ ps -t pst/1$ ps -ft tty1
Lister les processus par TTY

Imprimer l’arborescence des processus

15. Une arborescence de processus montre comment les processus du système sont liés les uns aux autres; les processus dont les parents ont été tués sont adoptés par l’init (ou systemd).

$ ps -e --forest 
Arborescence des processus de liste

16. Vous pouvez également imprimer une arborescence de processus pour un processus donné comme celui-ci.

$ ps -f --forest -C sshdOR$ ps -ef --forest | grep -v grep | grep sshd 
Liste arborescente du processus

Threads de processus d’impression

17. Pour imprimer tous les threads d’un processus, utilisez l’indicateur -H, cela affichera les colonnes LWP (processus léger) ainsi que NLWP (nombre de processus légers).

$ ps -fL -C httpd
Lister les threads de processus

Spécifier le format de sortie personnalisé

En utilisant les options -o ou –format, ps vous permet de créer des formats de sortie définis par l’utilisateur comme indiqué ci-dessous.

18. Pour répertorier tous les spécificateurs de format, incluez l’indicateur L.

$ ps L

19. La commande ci-dessous vous permet de visualiser le PID, le PPID, le nom d’utilisateur et la commande d’un processus.

$ ps -eo pid,ppid,user,cmd
Lister les processus avec des noms

20. Vous trouverez ci-dessous un autre exemple de format de sortie personnalisé affichant le groupe de système de fichiers, la valeur intéressante, l’heure de début et le temps écoulé d’un processus.

$ ps -p 1154 -o pid,ppid,fgroup,ni,lstart,etime
Liste des informations d’ID de processus

21. Pour rechercher un nom de processus à l’aide de son PID.

$ ps -p 1154 -o comm=
Rechercher un processus à l’aide du PID

Afficher les processus parents et enfants

22. Pour sélectionner un processus spécifique par son nom, utilisez l’indicateur -C, cela affichera également tous ses processus enfants.

$ ps -C sshd
Rechercher le processus parent-enfant

23. Trouvez tous les PID de toutes les instances d’un processus, utile lors de l’écriture de scripts qui ont besoin de lire les PID à partir d’une sortie ou d’un fichier std.

$ ps -C httpd -o pid=
Rechercher tous les PID de processus

24. Vérifiez le temps d’exécution d’un processus.

$ ps -eo comm,etime,user | grep httpd

La sortie ci-dessous montre que le service HTTPD fonctionne depuis 1 heure, 48 minutes et 17 secondes.

Rechercher la disponibilité du processus

Dépannage Performances du système Linux

Si votre système ne fonctionne pas comme il se doit, par exemple s’il est anormalement lent, vous pouvez effectuer un dépannage du système comme suit.

26. Trouvez les meilleurs processus en cours d’exécution en fonction de l’utilisation la plus élevée de la mémoire et du processeur sous Linux.

$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | headOR$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head
Rechercher les principaux processus en cours d’exécution

27. Pour tuer un processus Linux / des applications qui ne répondent pas ou tout processus qui consomme beaucoup de temps CPU.

Tout d’abord, recherchez le PID du processus ou de l’application qui ne répond pas.

$ ps -A | grep -i stress

Ensuite, utilisez la commande kill pour le terminer immédiatement.

$ kill -9 2583 2584
Rechercher et tuer un processus

Imprimer les informations de sécurité

28. Affichez le contexte de sécurité (spécifiquement pour SELinux) comme celui-ci.

$ ps -eMOR$ ps --context
Rechercher le contexte SELinux

29. Vous pouvez également afficher les informations de sécurité au format défini par l’utilisateur avec cette commande.

$ ps -eo euser,ruser,suser,fuser,f,comm,label
Lister le contexte SELinux par utilisateurs

Effectuer une surveillance des processus en temps réel à l’aide de Watch Utility

30. Enfin, puisque ps affiche des informations statiques, vous pouvez utiliser l’utilitaire watch pour effectuer une surveillance des processus en temps réel avec une sortie répétitive, affichée après chaque seconde comme dans la commande ci-dessous (spécifiez une commande ps personnalisée pour atteindre votre objectif).

$ watch -n 1 "ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head"
Surveillance des processus en temps réel

Important: ps n’affiche que des informations statiques, pour afficher la sortie fréquemment mise à jour, vous pouvez utiliser des outils tels que htop; top et regards: les deux derniers sont en fait un outil de surveillance des performances du système Linux.

Vous aimerez peut-être aussi lire ces articles connexes suivants.

  1. Comment trouver un nom de processus à l’aide du numéro PID sous Linux
  2. Trouver les principaux processus en cours d’exécution en fonction de l’utilisation maximale de la mémoire et du processeur sous Linux
  3. Guide de Commandes Kill, Pkill et Killall pour terminer un processus sous Linux
  4. Comment rechercher et tuer des processus en cours d’exécution sous Linux
  5. Comment démarrer une commande Linux en arrière-plan et détacher un processus dans un terminal

Articles
Previous Post

PMC (Français)

Next Post

Yosemite Hikes: les meilleurs endroits pour prendre vos pieds dans le parc national de Yosemite

Laisser un commentaire Annuler la réponse

Articles récents

  • Meilleures écoles de photographie du monde, 2020
  • Les citoyens souverains apportent leur philosophie anti-gouvernement aux routes
  • Guide des coûts de réparation du stuc
  • Muckrakers (Français)
  • Oncologie de précision

Archives

  • février 2021
  • janvier 2021
  • décembre 2020
  • novembre 2020
  • octobre 2020
  • septembre 2020
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어
Proudly powered by WordPress | Theme: Fmi by Forrss.