[Explication complète des commandes Linux] 188. Compréhension approfondie des commandes pidof et pidstat : un outil puissant pour surveiller et gérer les processus

pidof

Rechercher le numéro d'identification du processus portant le nom spécifié

Informations Complémentaires

La commande pidof est utilisée pour trouver le numéro d'identification du processus portant le nom spécifié.

grammaire

pidof(options)(paramètres)

Possibilités

  • -s : renvoie uniquement un numéro de processus ;
  • -c : afficher uniquement les processus avec le même répertoire « racine » ;
  • -x : Afficher les processus démarrés par des scripts ;
  • -o : Spécifiez l'ID du processus à ne pas afficher.

paramètre

Nom du processus : spécifiez le nom du processus à rechercher.

Exemple

Recherchez le numéro d'identification du processus nginx :

pidof nginx
13312 5371

Trouvez le numéro d'identification du processus crond :

pidof crond
1509

Recherchez le numéro d'identification du processus d'initialisation :

pidof init
1

pidstat

Surveiller l'utilisation des ressources système des processus

illustrer

pidstat est une commande de l'outil sysstat, utilisée pour surveiller l'utilisation des ressources système telles que le processeur, la mémoire, les threads et les E/S du périphérique pour tous les processus ou certains processus. Lorsque pidstat est exécuté pour la première fois, il affiche diverses informations statistiques depuis le démarrage du système. L'exécution de pidstat par la suite affichera des informations statistiques depuis la dernière exécution de la commande. Les utilisateurs peuvent obtenir les informations statistiques requises en spécifiant le nombre et l'heure des statistiques.

grammaire

pidstat [options] [ <intervalle> ] [ <nombre de fois> ]

Possibilités

  • -u : paramètre par défaut, affiche les statistiques d'utilisation du processeur de chaque processus
  • -r : Afficher les statistiques d'utilisation de la mémoire de chaque processus
  • -d : afficher l'utilisation des E/S de chaque processus
  • -w : afficher l'état de changement de contexte de chaque processus
  • -t : affiche les statistiques du thread
  • -p : spécifiez le numéro du processus
  • -T { TASK | CHILD | ALL } : Cette option spécifie la surveillance pidstat. TASK signifie signaler une tâche indépendante et le mot-clé CHILD signifie rapporter des informations statistiques sur tous les threads du processus. ALL signifie rendre compte d'une tâche indépendante et de tous les threads sous la tâche. Remarque : Les statistiques globales pour les tâches et les threads enfants n'ont rien à voir avec l'option pidstat. Ces statistiques ne correspondront pas à l'intervalle statistique actuel. Ces statistiques ne seront collectées que lorsque le thread enfant sera supprimé ou terminé.
  • -V : numéro de version
  • -h : affiche toutes les activités sur une seule ligne afin que les autres programmes puissent facilement les analyser.
  • -I : Dans l'environnement SMP, indique l'utilisation du processeur/le nombre de cœurs de la tâche
  • -l : Afficher le nom de la commande et tous les paramètres

Exemple

Affichez l'utilisation du processeur de tous les processus :

pidstat -u -p ALL
11:04:06 AM   UID       PID    %usr %system  %guest    %CPU   CPU  Command
11:04:06 AM     0         1    0.03    0.05    0.00    0.08    20  systemd
11:04:06 AM     0         2    0.00    0.00    0.00    0.00    28  kthreadd
11:04:06 AM     0         3    0.00    0.00    0.00    0.00     0  rcu_gp
11:04:06 AM     0         4    0.00    0.00    0.00    0.00     0  rcu_par_gp
11:04:06 AM     0         6    0.00    0.00    0.00    0.00     0  kworker/0:0H-kblockd
11:04:06 AM     0         9    0.00    0.00    0.00    0.00    38  mm_percpu_wq
11:04:06 AM     0        10    0.00    0.01    0.00    0.01     0  ksoftirqd/0
11:04:06 AM     0        11    0.00    0.23    0.00    0.23    15  rcu_sched
11:04:06 AM     0        12    0.00    0.00    0.00    0.00     0  migration/0
11:04:06 AM     0        14    0.00    0.00    0.00    0.00     0  cpuhp/0
11:04:06 AM     0        15    0.00    0.00    0.00    0.00     1  cpuhp/1
...

Affichez l'utilisation de la mémoire de tous les processus :

pidstat -r
11:10:35 AM   UID       PID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command
11:10:35 AM     0         1      7.24      0.05  191312   4208   0.01  systemd
11:10:35 AM     0      1407      2.02      0.09   39316   9016   0.03  systemd-journal
11:10:35 AM     0      1442      0.03      0.00  190380   1080   0.00  lvmetad
11:10:35 AM     0      1457      0.46      0.00   46252   1560   0.00  systemd-udevd
11:10:35 AM     0      2429      0.11      0.00  163620   9472   0.03  sshd
11:10:35 AM   992      2446      0.02      0.00    8588    996   0.00  lsmd
11:10:35 AM     0      2447      0.05      0.00   90572   1468   0.00  rngd
11:10:35 AM     0      2448      0.15      0.02  451272   3520   0.01  udisksd
11:10:35 AM     0      2449      0.18      0.02  396488   1948   0.01  accounts-daemon
11:10:35 AM     0      2454      0.02      0.02  201336   1464   0.00  gssproxy
...

Affichez l'utilisation des E/S de tous les processus :

pidstat -d
11:12:30 AM   UID       PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command
11:12:30 AM     0         1    250.05     11.57      2.13  systemd
11:12:30 AM     0       224      1.21      0.00      0.00  khugepaged
11:12:30 AM     0       290      0.03      0.00      0.00  kswapd0
11:12:30 AM     0       291      0.02      0.00      0.00  kswapd1
11:12:30 AM     0      1312      1.03      0.00      0.00  xfsaild/dm-0
11:12:30 AM     0      1407      1.31      0.00      0.00  systemd-journal
11:12:30 AM     0      1442      0.01      0.00      0.00  lvmetad
11:12:30 AM     0      1457      1.77      0.00      0.00  systemd-udevd
11:12:30 AM   992      2446      0.79      0.00      0.00  lsmd
11:12:30 AM     0      2447      0.07      0.00      0.00  rngd
11:12:30 AM     0      2448      0.46      0.00      0.00  udisksd
...

Vérifiez le changement de contexte du processus :

pidstat -w
11:15:52 AM   UID       PID   cswch/s nvcswch/s  Command
11:15:52 AM     0         1      3.15      0.03  systemd
11:15:52 AM     0         2      0.13      0.00  kthreadd
11:15:52 AM     0         3      0.00      0.00  rcu_gp
11:15:52 AM     0         4      0.00      0.00  rcu_par_gp
11:15:52 AM     0         6      0.00      0.00  kworker/0:0H-kblockd
11:15:52 AM     0         9      0.00      0.00  mm_percpu_wq
11:15:52 AM     0        10      1.99      0.00  ksoftirqd/0
...

Description du champ d'en-tête

  • PID : identifiant du processus
  • %usr : le pourcentage de CPU occupé par le processus dans l'espace utilisateur
  • %system : le pourcentage de CPU occupé par le processus dans l'espace du noyau
  • %guest : le pourcentage de CPU occupé par le processus dans la machine virtuelle
  • %CPU : Le pourcentage de CPU occupé par le processus
  • CPU : numéro de CPU du processus de traitement
  • Commande : la commande correspondant au processus en cours

Description du champ d'en-tête (utilisation de la mémoire)

  • PID : identifiant du processus
  • Minflt/s : erreurs mineures par seconde pour les tâches qui ne nécessitent pas de chargement de pages à partir du disque
  • Majflt/s : erreurs majeures par seconde pour les tâches nécessitant le chargement de pages à partir du disque
  • VSZ : taille de l'adresse virtuelle, utilisation de la mémoire virtuelle en Ko
  • RSS : taille de l'ensemble résident, utilisation de la mémoire de la zone non swap en Ko
  • Commande : nom de la commande de tâche

Description du champ d'en-tête (utilisation des E/S)

  • PID : identifiant du processus
  • kB_rd/s : Ko lus sur le disque par seconde
  • kB_wr/s : Ko écrits sur le disque par seconde
  • kB_ccwr/s : Ko écrits sur le disque lorsque la tâche a été annulée. Se produit lorsqu'une tâche tronque un cache de page sale.
  • COMMANDE : nom de la commande de la tâche

Signification des champs d'en-tête (changement de contexte)

  • PID : identifiant du processus
  • Cswch/s : nombre de changements de contexte de tâche actifs par seconde
  • Nvcswch/s : nombre de changements de contexte de tâche passifs par seconde
  • Commande : nom de la commande

Apprendre à partir de zéropython

[Apprendre Python à partir de zéro] 92. Utilisez la bibliothèque de requêtes de Python pour envoyer des requêtes HTTP et traiter les réponses
[Apprendre Python à partir de zéro] 91. Utiliser des décorateurs et des dictionnaires pour gérer les chemins de requêtes dans une application Web simple
[Apprendre Python à partir de zéro] 93. Utiliser un dictionnaire Chemin de requête de gestion
[Apprendre Python à partir de zéro] 89. Utiliser WSGI pour créer un serveur Web simple et efficace
[Apprendre Python à partir de zéro] 88. Explication détaillée de l'interface WSGI : réaliser un développement Web simple et efficace
[Apprendre Python à partir de zéro] 87. Manuellement construire un serveur HTTP en Python Implémentation et traitement simultané multithread
[Apprendre Python à partir de zéro] 86. Compréhension approfondie du protocole HTTP et de son rôle dans la communication entre le navigateur et le serveur
[Apprendre Python à partir de zéro] 85. Application de la technologie informatique parallèle dans le pool de processus Python
[Apprendre Python à partir de zéro]] 84. Compréhension approfondie des threads et des processus
[Apprendre Python à partir de zéro] 83. Programmation multi-processus Python et utilisation de pools de processus
[Apprendre Python à partir de zéro] 82. Programme de discussion implémentation basée sur le multi-threading
[Apprendre Python à partir de zéro] 81. Python plus Application de la communication et de la file d'attente des threads
[Apprendre Python à partir de zéro] 80. Accès des threads aux variables globales et problèmes de sécurité des threads
[Apprendre Python à partir de zéro] 79. Accès aux threads variables globales et problèmes de sécurité des threads
[Apprendre python à partir de zéro] 78. Cas de téléchargement de fichiers
[Apprendre python à partir de zéro] 77. Programmation et précautions du serveur TCP
[apprendre python à partir de zéro] 76. Serveur et client : composants clés de la communication réseau
[apprendre python à partir de zéro] 75. Protocole TCP : protocole de communication fiable de la couche de transmission orienté connexion
[Apprendre Python à partir de zéro] 74. Programme réseau UDP : explication détaillée des problèmes de port et informations de liaison
[Apprendre Python à partir de zéro] 73. Programme réseau UDP - envoi de données
[Apprendre Python à partir de zéro] 72. Compréhension approfondie de la communication Socket et méthode de création de sockets
[Apprendre python à partir de zéro] 71. Ports réseau et leurs fonctions
[Apprendre python à partir de zéro] 70. Méthodes de communication réseau et leurs applications : de la communication directe aux routeurs pour connecter plusieurs réseaux
[Apprendre python à partir de zéro] 69. Réseau analyse de la communication et de la classification des adresses IP
[Apprendre Python à partir de zéro] 68. Modes gourmands et non gourmands dans les expressions régulières Python
[Apprendre Python à partir de zéro] 67. Le module re en Python : remplacement régulier et technologie de correspondance avancée
[Apprendre Python à partir de zéro] 66 .Compréhension approfondie des expressions régulières : un outil puissant pour la correspondance de modèles et le traitement de texte
[Apprendre Python à partir de zéro] 65. Explication détaillée des modificateurs d'expressions régulières Python et leurs applications
[Apprendre Python à partir de zéro] 64. La méthode re.compile dans les expressions régulières Python Explication détaillée de l'utilisation
[Apprendre Python à partir de zéro] 63. Introduction à la classe re.Match et à ses attributs et méthodes dans les expressions régulières
[Apprendre Python à partir de zéro] 62. Expressions régulières Python : un puissant outil de correspondance de chaînes
[Apprendre python from scratch] 61. Explication détaillée et exemples d'application des attributs de propriété en Python
[Apprendre python from scratch] 60. Générateur d'exploration : un outil flexible pour l'itération
[Apprendre python from scratch] 59. Iterator : Un outil efficace pour optimiser la traversée des données
[ Apprendre Python à partir de zéro] 58. Exceptions personnalisées en Python et méthodes de génération d'exceptions
[Apprendre Python à partir de zéro] 57. Utilisez le mot-clé with en Python pour fermer correctement les ressources
[Apprendre Python à partir de zéro] 56. L'importance et l'application de la gestion des exceptions dans la programmation
[Apprendre Python à partir de zéro] 55. Sérialisation et somme en Python Désérialisation, application des modules JSON et pickle
[Apprendre python à partir de zéro] 54. Écriture de données en mémoire
[Apprendre python à partir de zéro] 53. Fichiers CSV et module CSV de Python
[Apprendre python à partir de zéro] 52. Lecture et écriture de fichiers - Guide d'utilisation des fichiers Python
[ Apprendre Python à partir de zéro] 51. Ouverture et fermeture de fichiers et de leurs applications en Python
[Apprendre Python à partir de zéro] 49. Fonctions intégrées liées aux objets dans Python et leur utilisation
[Apprendre Python à partir de zéro] 48 .Explication détaillée de l'héritage et des multiples l'héritage en Python
[Apprendre Python à partir de zéro] 47. Le concept et l'utilisation de base de l'héritage dans la programmation orientée objet
[Apprendre Python à partir de zéro] 46. Analyse des méthodes __new__ et __init__ et des singletons dans les modèles de conception Python
[Apprendre Python à partir de zéro] 45 Méthodes de classe et méthodes statiques en Python
[Apprendre Python à partir de zéro] 44. Propriétés et méthodes privées dans la programmation orientée objet
[Apprendre Python à partir de zéro] 43. Exemples de programmation orientée objet Python Propriétés et attributs de classe
[Apprendre Python à partir de zéro] 42. Propriétés et méthodes intégrées dans Python
[Apprendre Python à partir de zéro] 41. Méthode magique Python (2)
[Apprendre Python à partir de zéro] 40. Méthode magique Python (1)
[Apprendre Python à partir de zéro] 39. Syntaxe de base orientée objet et exemples d'application
[Apprendre Python à partir de zéro] 38. Comment utiliser et importer des packages Python
[Apprendre Python à partir de zéro] 37. L'utilisation et les précautions des modules personnalisés Python
[Apprendre Python from scratch] Apprendre python] 36. Méthodes et techniques d'utilisation de pip pour la gestion de packages tiers en Python
[Apprendre python à partir de zéro] 35. Modules système communs Python et leur utilisation
[Apprendre python à partir de zéro] 34. Explication détaillée de l'importation et utilisation des modules Python
[Apprendre python à partir de zéro] 33. Le rôle des décorateurs (2)
[Apprendre python à partir de zéro] 32. Le rôle des décorateurs (1)
[Apprendre python à partir de zéro] 31. Compréhension approfondie des commander les fonctions et les fermetures en Python
[De Apprendre Python à partir de zéro] 30. Compréhension approfondie des fonctions récursives et des fonctions anonymes
【apprendre Python à partir de zéro】 29. "Explication détaillée des paramètres de fonction" - comprendre les différentes utilisations des paramètres de fonction Python
【 apprendre python à partir de zéro】 28. Variables locales et variables globales dans Python Variables
[Apprendre python à partir de zéro] 27. L'utilisation de fonctions Python et d'appels imbriqués
[Apprendre python à partir de zéro] 25. Fonctions : un outil pour améliorer l'efficacité de l'écriture de code
[Apprendre Python à partir de zéro] 24. Opérations sur les chaînes et méthodes de parcours en Python
[Apprendre Python à partir de zéro] 23. Comment utiliser les ensembles (set) et les opérations courantes en Python
[Apprendre Python à partir de zéro] 22. Ajouter, supprimer, modifier et interroger les variables du dictionnaire en Python
[Apprendre Python à partir de zéro] 21. Tuples et dictionnaires Python
[Apprendre Python à partir de zéro] 20. Compétences et exemples d'opération de liste Python
[Apprendre Python à partir de zéro] 19. Applications de boucle dans les listes et d'imbrication de listes
[Apprendre Python à partir de zéro] 18. Explication détaillée des opérations de base des listes Python (1)
[De Apprendre Python à partir de zéro] 17. La méthode de formatage des chaînes Python (2)
【Apprendre Python à partir de zéro】 16. La méthode de formatage des chaînes Python (1)
【Apprendre Python à partir de zéro】 15. Compréhension approfondie des chaînes et Encodage du jeu de caractères
【De l'apprentissage de Python à partir de zéro】 14. Opérations courantes sur les chaînes Python (2)
【Apprendre Python à partir de zéro】 13. Opérations courantes sur les chaînes Python (1)
【Apprendre Python à partir de zéro】 12. Opérations et applications sur les chaînes Python
【 Apprendre Python à partir de zéro】 11. Instructions de boucle Python et flux de contrôle
[Apprendre Python à partir de zéro] 10. Explication détaillée des instructions conditionnelles Python et si l'imbrication
[Apprendre Python à partir de zéro] 09. Déclarations de jugement conditionnel en Python
[Apprendre Python à partir de zéro] 08 . Python comprend l'opérateur d'opérations sur les bits, la priorité de l'opérateur
[Apprendre Python à partir de zéro] 07. Explication détaillée des opérateurs Python : affectation, comparaison et opérateurs logiques
[Apprendre Python à partir de zéro] 06. Utiliser les opérateurs arithmétiques en Python pour les calculs et la concaténation de chaînes
[Apprendre à partir de scratch] python ] 05. Sortie et entrée en Python
[Apprendre Python à partir de zéro] 04. Bases de la programmation Python : variables, types de données et identifiants
[Apprendre Python à partir de zéro] 03. Programmation interactive Python et explication détaillée des commentaires
[Apprendre Python à partir de zéro] 02. Introduction aux outils de développement
[Apprendre Python à partir de zéro] 01. Installer et configurer Python

Je suppose que tu aimes

Origine blog.csdn.net/qq_33681891/article/details/133125030
conseillé
Classement