[Umfassende Erklärung der Linux-Befehle] 188. Vertiefendes Verständnis der Befehle pidof und pidstat: ein leistungsstarkes Tool zur Überwachung und Verwaltung von Prozessen

pidof

Suchen Sie die Prozess-ID-Nummer des Prozesses mit dem angegebenen Namen

Weitere Informationen

Mit dem Befehl pidof wird die Prozess-ID-Nummer des Prozesses mit dem angegebenen Namen ermittelt.

Grammatik

pidof(Optionen)(Parameter)

Optionen

  • -s: gibt nur eine Prozessnummer zurück;
  • -c: Nur Prozesse mit demselben „Root“-Verzeichnis anzeigen;
  • -x: Von Skripten gestartete Prozesse anzeigen;
  • -o: Geben Sie die Prozess-ID an, die nicht angezeigt werden soll.

Parameter

Prozessname: Geben Sie den Namen des zu suchenden Prozesses an.

Beispiel

Finden Sie die ID-Nummer des Nginx-Prozesses:

pidof nginx
13312 5371

Finden Sie die ID-Nummer des Crond-Prozesses:

pidof crond
1509

Finden Sie die ID-Nummer des Init-Prozesses:

pidof init
1

pidstat

Überwachen Sie die Systemressourcennutzung von Prozessen

veranschaulichen

pidstat ist ein Befehl des Tools sysstat, mit dem die Nutzung von Systemressourcen wie CPU, Speicher, Threads und Geräte-E/A für alle oder bestimmte Prozesse überwacht wird. Wenn pidstat zum ersten Mal ausgeführt wird, werden verschiedene statistische Informationen seit dem Systemstart angezeigt. Wenn Sie pidstat danach ausführen, werden statistische Informationen seit der letzten Ausführung des Befehls angezeigt. Benutzer können die erforderlichen statistischen Informationen erhalten, indem sie die Anzahl und den Zeitpunkt der Statistiken angeben.

Grammatik

pidstat [Optionen] [ <Intervall> ] [ <Anzahl der Male> ]

Optionen

  • -u: Standardparameter, zeigt CPU-Nutzungsstatistiken für jeden Prozess an
  • -r: Zeigt die Speichernutzungsstatistik jedes Prozesses an
  • -d: Zeigt die E/A-Nutzung jedes Prozesses an
  • -w: Zeigt den Kontextwechselstatus jedes Prozesses an
  • -t: Zeigt Statistiken zu Threads an
  • -p: Geben Sie die Prozessnummer an
  • -T { TASK | CHILD | ALL }: Diese Option gibt die PIDSTAT-Überwachung an. TASK bedeutet das Melden einer unabhängigen Aufgabe, und das Schlüsselwort CHILD bedeutet das Melden statistischer Informationen aller Threads im Prozess. ALL bedeutet die Berichterstattung über eine unabhängige Aufgabe und alle Threads unter der Aufgabe. Hinweis: Globale Statistiken für Aufgaben und untergeordnete Threads haben nichts mit der Option pidstat zu tun. Diese Statistiken entsprechen nicht dem aktuellen Statistikintervall. Diese Statistiken werden nur erfasst, wenn der untergeordnete Thread beendet oder abgeschlossen wird.
  • -V: Versionsnummer
  • -h: Zeigt alle Aktivitäten in einer Zeile an, damit andere Programme sie problemlos analysieren können.
  • -I: Zeigt in der SMP-Umgebung die CPU-Auslastung/Anzahl der Kerne der Aufgabe an
  • -l: Zeigt den Befehlsnamen und alle Parameter an

Beispiel

Sehen Sie sich die CPU-Auslastung aller Prozesse an:

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
...

Sehen Sie sich die Speichernutzung aller Prozesse an:

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
...

Sehen Sie sich die E/A-Nutzung aller Prozesse an:

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
...

Überprüfen Sie den Kontextwechsel des Prozesses:

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
...

Beschreibung des Headerfelds

  • PID: Prozess-ID
  • %usr: Der Prozentsatz der vom Prozess belegten CPU im Benutzerbereich
  • %system: Der Prozentsatz der CPU, die der Prozess im Kernelraum belegt
  • %guest: Der Prozentsatz der vom Prozess in der virtuellen Maschine belegten CPU
  • %CPU: Der Prozentsatz der vom Prozess belegten CPU
  • CPU: CPU-Nummer des Verarbeitungsprozesses
  • Befehl: Der Befehl, der dem aktuellen Prozess entspricht

Beschreibung des Headerfelds (Speichernutzung)

  • PID: Prozesskennung
  • Minflt/s: Kleinere Fehler pro Sekunde für Aufgaben, die kein Laden von Seiten von der Festplatte erfordern
  • Majflt/s: Schwerwiegende Fehler pro Sekunde für Aufgaben, die das Laden von Seiten von der Festplatte erfordern
  • VSZ: Größe der virtuellen Adresse, Nutzung des virtuellen Speichers in KB
  • RSS: Resident-Set-Größe, Nicht-Swap-Area-Speichernutzung in KB
  • Befehl: Name des Aufgabenbefehls

Beschreibung des Headerfelds (IO-Nutzung)

  • PID: Prozess-ID
  • kB_rd/s: Von der Festplatte gelesene KB pro Sekunde
  • kB_wr/s: KB, die pro Sekunde auf die Festplatte geschrieben werden
  • kB_ccwr/s: KB, die auf die Festplatte geschrieben wurden, als die Aufgabe abgebrochen wurde. Tritt auf, wenn eine Aufgabe einen fehlerhaften Seitencache abschneidet.
  • BEFEHL: Befehlsname der Aufgabe

Bedeutung der Header-Felder (Kontextumschaltung)

  • PID: Prozess-ID
  • Cswch/s: Anzahl der aktiven Task-Kontextwechsel pro Sekunde
  • Nvcswch/s: Anzahl der passiven Task-Kontextwechsel pro Sekunde
  • Befehl: Befehlsname

Lernen Sie von Grund aufpython

[Python von Grund auf lernen] 92. Verwenden Sie die Anforderungsbibliothek von Python, um HTTP-Anfragen zu senden und Antworten zu verarbeiten.
[Python von Grund auf lernen] 91. Verwenden Sie Dekoratoren und Wörterbücher, um Anforderungspfade in einer einfachen Webanwendung zu verwalten.
[Python von Grund auf lernen] 93. Verwenden Sie ein Wörterbuch Management-Anforderungspfad
[Python von Grund auf lernen] 89. Verwenden Sie WSGI, um einen einfachen und effizienten Webserver zu erstellen
[Python von Grund auf lernen] 88. Detaillierte Erläuterung der WSGI-Schnittstelle: Einfache und effiziente Webentwicklung realisieren
[Python von Grund auf lernen] 87. Manuell Erstellen Sie einen HTTP-Server in Python. Implementierung und gleichzeitige Multithread-Verarbeitung.
[Python von Grund auf lernen.] 86. Vertiefendes Verständnis des HTTP-Protokolls und seiner Rolle bei der Browser- und Serverkommunikation.
[Python von Grund auf lernen.] 85. Anwendung der Parallel-Computing-Technologie im Python-Prozesspool
[Python von Grund auf lernen] 84. Vertieftes Verständnis von Threads und Prozessen
[Python von Grund auf lernen] 83. Python-Multiprozessprogrammierung und Verwendung von Prozesspools
[Python von Grund auf lernen] 82. Chat-Programm Implementierung basierend auf Multithreading
[Python von Grund auf lernen] 81. Python mehr Anwendung von Thread-Kommunikation und Warteschlange
[Python von Grund auf lernen] 80. Thread-Zugriff auf globale Variablen und Thread-Sicherheitsprobleme
[Python von Grund auf lernen] 79. Thread-Zugriff auf globale Variablen und Thread-Sicherheitsprobleme
[Python von Grund auf lernen] 78. Datei-Download-Fall
[Python von Grund auf lernen] 77. Programmierung und Vorsichtsmaßnahmen für TCP-Server
[Python von Grund auf lernen] 76. Server und Client: Schlüsselkomponenten der Netzwerkkommunikation
[Python lernen von Grund auf neu] 75. TCP-Protokoll: zuverlässiges verbindungsorientiertes Übertragungsschicht-Kommunikationsprotokoll
[Python von Grund auf lernen] 74. UDP-Netzwerkprogramm: Detaillierte Erläuterung von Portproblemen und Bindungsinformationen
[Python von Grund auf lernen] 73. UDP-Netzwerkprogramm - Daten senden
[Python von Grund auf lernen] 72. Vertiefendes Verständnis der Socket-Kommunikation und Methode zur Erstellung von Sockets
[Python von Grund auf lernen] 71. Netzwerkports und ihre Funktionen
[Python von Grund auf lernen] 70. Netzwerkkommunikationsmethoden und ihre Anwendungen: von der direkten Kommunikation bis zu Routern, um mehrere Netzwerke zu verbinden
[Python von Grund auf lernen] 69. Netzwerk Kommunikations- und IP-Adressklassifizierungsanalyse
[Python von Grund auf lernen] 68. Gierige und nicht gierige Modi in regulären Python-Ausdrücken
[Python von Grund auf lernen] 67. Das Re-Modul in Python: regelmäßige Ersetzung und erweiterte Matching-Technologie
[Python von Grund auf lernen] 66. Umfassendes Verständnis regulärer Ausdrücke: ein leistungsstarkes Werkzeug für Mustervergleich und Textverarbeitung
[Python von Grund auf lernen] 65. Detaillierte Erklärung der Python-Modifikatoren für reguläre Ausdrücke und ihrer Anwendungen
[Python von Grund auf lernen] 64. Die re.compile-Methode in regulären Ausdrücken in Python Detaillierte Erläuterung der Verwendung
[Python von Grund auf lernen] 63. Einführung in die re.Match-Klasse und ihre Attribute und Methoden in regulären Ausdrücken
[Python von Grund auf lernen] 62. Reguläre Python-Ausdrücke: ein leistungsstarkes Tool zum String-Matching
[Lernen Python von Grund auf] 61. Detaillierte Erklärung und Anwendungsbeispiele von Eigenschaftsattributen in Python
[Python von Grund auf lernen] 60. Explorationsgenerator: ein flexibles Tool für die Iteration
[Python von Grund auf lernen] 59. Iterator: Ein effizientes Tool zur Optimierung der Datendurchquerung
[ Python von Grund auf lernen] 58. Benutzerdefinierte Ausnahmen in Python und Methoden zum Auslösen von Ausnahmen
[Python von Grund auf lernen] 57. Verwenden Sie das Schlüsselwort with in Python, um Ressourcen korrekt zu schließen
[Python von Grund auf lernen] 56. Die Bedeutung und Anwendung der Ausnahmebehandlung in der Programmierung
[Python von Grund auf lernen] 55. Serialisierung und Summe in Python Deserialisierung, Anwendung von JSON- und Pickle-Modulen
[Python von Grund auf lernen] 54. Daten in den Speicher schreiben
[Python von Grund auf lernen] 53. CSV-Dateien und Pythons CSV-Modul
[Python von Grund auf lernen] 52. Dateien lesen und schreiben – Anleitung zur Python-Dateibedienung
[ Python von Grund auf lernen] 51. Dateien und ihre Anwendungen in Python öffnen und schließen
[Python von Grund auf lernen] 49. Objektbezogene integrierte Funktionen in Python und ihre Verwendung
[Python von Grund auf lernen] 48 .Detaillierte Erklärung von Vererbung und Mehrfachvererbung Vererbung in Python
[Python von Grund auf lernen] 47. Das Konzept und die grundlegende Verwendung der Vererbung in der objektorientierten Programmierung
[Python von Grund auf lernen] 46. Analyse von __new__- und __init__-Methoden und Singletons in Python-Entwurfsmustern
[Python von Grund auf lernen] 45 . Klassenmethoden und statische Methoden in Python
[Python von Grund auf lernen] 44. Private Eigenschaften und Methoden in der objektorientierten Programmierung
[Python von Grund auf lernen] 43. Beispiele in der objektorientierten Programmierung in Python Eigenschaften und Klassenattribute
[Python von Grund auf lernen] 42. Integrierte Eigenschaften und Methoden in Python
[Python von Grund auf lernen] 41. Python-Magie-Methode (2)
[Python von Grund auf lernen] 40. Python-Magie-Methode (1)
[Python von Grund auf lernen] 39. Grundlegende objektorientierte Syntax und Anwendungsbeispiele
[Python von Grund auf lernen] 38. Verwendung und Import von Python-Paketen
[Python von Grund auf lernen] 37. Verwendung und Vorsichtsmaßnahmen von benutzerdefinierten Python-Modulen
[Python lernen von Grund auf] Python lernen] 36. Methoden und Techniken zur Verwendung von pip für die Paketverwaltung von Drittanbietern in Python
[Python von Grund auf lernen] 35. Allgemeine Python-Systemmodule und ihre Verwendung
[Python von Grund auf lernen] 34. Detaillierte Erläuterung des Imports und Verwendung von Python-Modulen
[Python von Grund auf lernen] 33. Die Rolle von Dekoratoren (2)
[Python von Grund auf lernen] 32. Die Rolle von Dekoratoren (1)
[Python von Grund auf lernen] 31. Vertiefendes Verständnis von höher- Bestellfunktionen und Abschlüsse in Python
[Von „Lernen Sie Python von Grund auf““ 30. Vertiefendes Verständnis rekursiver Funktionen und anonymer Funktionen
„Lernen Sie Python von Grund auf“ 29. „Detaillierte Erklärung von Funktionsparametern“ – Verstehen Sie die verschiedenen Verwendungen von Python-Funktionsparametern
【 Python von Grund auf lernen】28. Lokale Variablen und globale Variablen in Python-Variablen
[Python von Grund auf lernen] 27. Die Verwendung von Python-Funktionen und verschachtelten Aufrufen
[Python von Grund auf lernen] 25. Funktionen: ein Tool zur Verbesserung der Effizienz beim Schreiben von Code
[Python von Grund auf lernen] 24. String-Operationen und Traversal-Methoden in Python
[Python von Grund auf lernen] 23. Verwendung von Mengen (Set) und allgemeinen Operationen in Python
[Python von Grund auf lernen] 22. Hinzufügen, Löschen, Ändern und Abfragen von Wörterbuchvariablen in Python
[Python von Grund auf lernen] 21. Python-Tupel und -Wörterbücher
[Python von Grund auf lernen] 20. Fähigkeiten und Beispiele für Python-Listenoperationen
[Python von Grund auf lernen] 19. Anwendungen des Durchlaufens von Listen und der Listenverschachtelung
[Python von Grund auf lernen] 18. Detaillierte Erläuterung der Grundoperationen von Python-Listen (1)
[Von Python von Grund auf lernen] 17. Die Formatierungsmethode von Python-Strings (2)
【Python von Grund auf lernen】 16. Die Formatierungsmethode von Python-Strings (1)
【Python von Grund auf lernen】 15. Vertiefendes Verständnis von Strings und Zeichensatzkodierung
【Von Python von Grund auf lernen】14. Allgemeine Operationen an Python-Strings (2)
【Python von Grund auf lernen】13. Allgemeine Operationen an Python-Strings (1)
【Python von Grund auf lernen】12. Python-String-Operationen und -Anwendungen
【 Python von Grund auf lernen】 11. Python-Schleifenanweisungen und Kontrollfluss
[Python von Grund auf lernen] 10. Detaillierte Erklärung von Python-Bedingungsanweisungen und deren Verschachtelung
[Python von Grund auf lernen] 09. Bedingte Beurteilungsanweisungen in Python
[Python von Grund auf lernen] 08 . Python versteht Bitoperationsoperatoren und Operatorprioritäten
[Python von Grund auf lernen] 07. Detaillierte Erklärung von Python-Operatoren: Zuweisung, Vergleich und logische Operatoren
[Python von Grund auf lernen] 06. Arithmetische Operatoren in Python für Berechnungen und String-Verkettung verwenden
[Lernen von Scratch] Python] 05. Ausgabe und Eingabe in Python
[Python von Grund auf lernen] 04. Grundlagen der Python-Programmierung: Variablen, Datentypen und Bezeichner
[Python von Grund auf lernen] 03. Interaktive Python-Programmierung und detaillierte Erklärung von Kommentaren
[Python von Grund auf lernen] 02. Einführung in Entwicklungstools
[Python von Grund auf lernen] 01. Python installieren und konfigurieren

Ich denke du magst

Origin blog.csdn.net/qq_33681891/article/details/133125030
Empfohlen
Rangfolge