So finden Sie übergeordnete Prozessprozesse PPID unter Linux

So finden Sie übergeordnete Prozessprozesse PPID unter Linux

Jedes Mal, wenn ein Programm ausgeführt wird, erstellt der Kernel einen mit dem Programm verbundenen Prozess. Einfach ausgedrückt, ein Prozess ist eine laufende Instanz eines Programms unter Linux.

Der vom Kernel erstellte Prozess wird als 'bezeichnet' bezeichnet 'Elternprozess''. Prozesse, die aus dem übergeordneten Prozess abgeleitet oder hervorgebracht wurden, werden als "bezeichnet"Kinderprozesse''. Ein übergeordneter Prozess kann aus mehreren untergeordneten Prozessen bestehen, die jeweils eindeutig haben PID (Prozess ID) aber dasselbe teilen Ppid.

Sie könnten auch mögen:

  • Alles, was Sie über Prozesse unter Linux wissen müssen [umfassende Anleitung]
  • 16 Top -Befehlsbeispiele unter Linux [Monitor Linux -Prozesse]
  • Wie man einen Linux -Prozess mit Kill, Pkill und Killall tötet
  • So finden Sie einen Prozessnamen mit der PID -Nummer unter Linux
  • Finden Sie Top -Laufprozesse nach dem höchsten Speicher und der CPU -Verwendung unter Linux

In diesem Leitfaden untersuchen wir verschiedene Möglichkeiten, wie Sie die übergeordneten Prozess -IDs (PPIDs) oder Prozesse auf einem Linux -System herausfinden können.

Was ist der Unterschied zwischen einer PID und einem PPID?

Ein Programm, das in den Speicher geladen und läuft. Einmal gestartet, erhält der Prozess eine eindeutige Zahl, die als Prozess -ID bezeichnet wird (PID) das identifiziert es im System eindeutig. Der Prozess kann jederzeit mit seinem bezeichnet werden PID. Um zum Beispiel einen Prozess zu töten, müssen Sie seine wissen PID Erste.

In Ergänzung zu PID, Jedem Prozess wird ein übergeordneter Prozess zugewiesen AUSWEIS (Ppid) Das zeigt, welcher Prozess es hervorgebracht hat. Und so kam es dass der Ppid ist der PID des Elternteils des Prozesses.

Um dies in den Kontext zu setzen, nehmen wir den Prozess an 5 mit einem PID von 5050 Startet Prozess 6. Prozess 6 wird ein einzigartiges zugewiesen PID wie zum Beispiel 6670, wird aber trotzdem die gegeben Ppid von 5050.

Der übergeordnete Prozess hier ist der Prozess 5 Und der Kinderprozess ist 6. Dem Kinderprozess wird ein einzigartiges zugewiesen PID aber die Ppid ist der gleiche wie der PID des übergeordneten Prozesss (Prozess 5)

Ein alleinerziehender Elternteil kann mehrere untergeordnete Prozesse mit jeweils eine eindeutige PID starten, alle teilen sich jedoch das Gleiche Ppid.

Suchen Sie die Elternprozess -ID (PPID) unter Linux

Es gibt zwei Hauptansätze, um das zu finden Ppid eines laufenden Prozesses auf einem Linux -System:

  • Verwenden Sie den Befehl pstree.
  • Verwenden des PS -Befehls.

Finden Sie Linux Process PPID mit dem Pstree -Befehl

A Pstree Der Befehl ist ein Befehlszeilen-Tool, mit dem ausgeführte Prozesse als Baum angezeigt werden. Dies sorgt für eine bequeme Möglichkeit, Prozesse in einer Hierarchie anzuzeigen. Es zeigt die Eltern-Kind-Beziehung in einer Baumhierarchie.

Mit dem -P Option, die Pstree Zeigt alle laufenden übergeordneten Prozesse zusammen mit ihren entsprechenden untergeordneten Prozessen und jeweiligen PIDs an.

$ pstree -p 
Zeigen Sie Linux -Laufprozesse in der Baumhierarchie

Aus der Ausgabe können wir die übergeordneten Prozess -IDs zusammen mit den untergeordneten Prozess -IDs sehen.

Zur Demonstration werden wir das überprüfen Ppid für Mozilla Firefox Zusammen mit der gesamten Prozesshierarchie unter Verwendung des folgenden Befehls:

$ pstree -p | Grep 'Firefox' 
Finden Sie den PPID des Linux -Prozesses

Aus der Ausgabe können Sie sehen, dass die Ppid von Feuerfuchs Ist 3457 Und der Rest ist Pids von Kinderprozessen.

Nur die anzeigen Ppid von Firefox und überspringen Sie den Rest des Ausgangs, leiten Sie den Ausgang in den Kopfbefehl mit -1 Die erste Zeile anzeigen.

$ pstree -p | Grep 'Firefox' | Kopf -1 
PPID des Linux -Prozesses drucken

Finden Sie Linux Process PPID mit PS -Befehl

Die andere Option, um die zu finden Ppid Von einem Prozess ist der PS -Befehl, der ein weit verbreiteter Befehl ist, der die derzeit ausgeführten Prozesse auf einem Linux -System anzeigt.

Wenn mit dem verwendet -EF Option, die PS -Befehl listet alle laufenden Prozesse zusammen mit ihren Details wie dem auf Uid, PID, Ppid, usw.

$ ps -f 
LISTE DURCH LINGELUX -Prozesse mit PID

Um es einzugrenzen und die anzuzeigen Ppid zum Beispiel eines bestimmten Prozesses, Feuerfuchs, Pass die -e Option und leiten Sie den Ausgang in den GREP -Befehl wie gezeigt.

$ ps -e | Grep 'Firefox' 
Finden Sie Linux Process PID

Noch einmal, aus der Ausgabe, können Sie sehen, dass die Ppid von Feuerfuchs Ist 3457.

In diesem Leitfaden haben wir gezeigt, wie Sie das finden können PPIDs von Prozessen, die auf einem Linux -System ausgeführt werden. Sie können entweder die verwenden Pstree Befehl oder der PS -Befehl zu dem gleichen Ziel erreichen.