Pstree: Unterschied zwischen den Versionen
K PatrickHunecke verschob die Seite Linuxbefehl:pstree nach Linux:Befehl:pstree, ohne dabei eine Weiterleitung anzulegen: Textersetzung - „Linuxbefehl:“ durch „Linux:Befehl:“ |
K Textersetzung - „Kategorie:Linux/Prozess“ durch „Kategorie:Linux/Prozess/Befehl“ |
||
(32 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[ | '''pstree''' - Prozesse in Baumansicht anzeigen | ||
== Beschreibung == | |||
pstree zeigt laufende Prozesse in einer Baumansicht an | |||
* Die Wurzel des Baums wird anhand der angegebenen PID oder mittels init gewählt, falls die PID weggelassen wird | |||
* Wenn ein Benutzername angegeben wird, werden die Wurzeln aller Prozessbäume anhand der Prozesse gewählt, die diesem Benutzer gehören | |||
pstree führt identische Zweige visuell zusammen, indem diese in eckige Klammern gesetzt werden und ihnen die Anzahl der Wiederholungen vorangestellt wird | |||
; Beispiel | |||
init-+-getty | |||
|-getty | |||
|-getty | |||
`-getty | |||
zu | |||
init---4*[getty] | |||
; Kind-Threads | |||
Kind-Threads eines Prozesses werden unter dem Elternprozess angezeigt und der Prozessname in geschweifte Klammern gesetzt, zum Beispiel | |||
icecast2---13*[{icecast2}] | |||
; X11 | |||
Falls pstree als pstree.x11 aufgerufen wird, bittet es den Benutzer am Ende der Zeile, die Eingabetaste zu drücken und kehrt nicht zurück, bis dies geschehen ist | |||
* Dies ist nützlich, wenn pstree in einem X-Terminal ausgeführt wird | |||
; hidepid | |||
Bestimmte Kernel- oder Einhängeparameter, wie die Option hidepid für procfs, verstecken Informationen für einige Prozesse | |||
* In diesen Situationen versucht pstree, die Baumansicht ohne diese Informationen zu erstellen, wobei die Prozessnamen als Fragezeichen dargestellt werden | |||
== Beispiel == | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
pstree | |||
init-+-actived | |||
|-atd | |||
|-cron | |||
|-gpm | |||
|-httpd---httpd | |||
|-in.identd---in.identd---5*[in.identd] | |||
|-inetd | |||
|-kflushd | |||
|-klogd | |||
|-kpiod | |||
|-kswapd | |||
|-kupdate | |||
|-lockd---rpciod | |||
|-2*[login---bash---ssh] | |||
|-login---sh | |||
|-2*[mingetty] | |||
|-nscd---nscd---5*[nscd] | |||
|-portmap | |||
|-syslogd | |||
</syntaxhighlight> | |||
Das Beispiel verdeutlicht, dass init der Elternprozess aller Prozesse ist. pstree versucht per Voreinstellung identische Prozesse in der Darstellung zusammen zu fassen, so bedeutet 2*[mingetty], dass 2 Prozesse das Kommando mingetty ausführen. | |||
Mit der Option -c wird diese Zusammenfassung abgeschaltet | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
... | |||
|-in.identd---in.identd-+-in.identd | |||
| |-in.identd | |||
| |-in.identd | |||
| |-in.identd | |||
| `-in.identd | |||
... | |||
</syntaxhighlight> | |||
== Installation == | |||
''pstree'' ist Teil des [[Linux/Paket|Pakets]] [[psmisc]] | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
</syntaxhighlight> | |||
== Aufruf == | |||
<syntaxhighlight lang="bash" highlight="1,2" line> | |||
pstree [-a, --arguments] [-c, --compact-not] [-C, --color Attribut] [-g, --show-pgids] [-h, --highlight-all, -H PID, --high‐light-pid PID] [-l, --long] [-n, --numeric-sort] [-N, --ns-sort Namensraum] [-p, --show-pids] [-s, --show-parents] [-S, --ns-changes] [-t, --thread-names] [-T, --hide-threads] [-u, --uid-changes] [-Z, --security-context] [-A, --ascii, -G, --vt100, -U, --unicode] [PID, Benutzer] | |||
pstree -V, --version | |||
</syntaxhighlight> | |||
=== Optionen === | |||
{| class="wikitable options sortable" | |||
! Unix !! Beschreibung | |||
|- | |||
| -a || zeigt Befehlszeilenargumente an | |||
* Falls die Befehlszeile eines Prozesses ausgelagert ist, wird dieser Prozess in Klammern angezeigt | |||
* Die Option -a deaktiviert implizit die Verdichtung für Prozesse, aber nicht für Threads | |||
|- | |||
| -A || verwendet ASCII-Zeichen zum Darstellen des Baums | |||
|- | |||
| -c || deaktiviert die Verdichtung identischer Unterbäume | |||
* Standardmäßig werden Unterbäume verdichtet, wo immer es möglich ist | |||
|- | |||
| -C || stellt den Prozessnamen anhand des angegebenen Attributs farbig dar | |||
* Gegenwärtig unterstützt pstree nur den Wert age, wodurch nach Alter des Prozesses eingefärbt wird | |||
* Prozesse, die jünger als 60 Sekunden sind, werden grün, Prozesse, die jünger als eine Stunde sind, gelb und die übrigen rot dargestellt | |||
|- | |||
| -g || zeigt Prozessgruppenkennungen (PGIDs) an | |||
* Die PGIDs werden als Dezimalzahlen in Klammern nach jedem der Prozessnamen angezeigt | |||
* Falls sowohl PIDs als auch PGIDs angezeigt werden, erscheinen die PIDs zuerst | |||
|- | |||
| -G || verwendet VT100-Zeichen zum Darstellen von Linien | |||
|- | |||
| -h || hebt den aktuellen Prozess und dessen Elternprozess hervor | |||
* Diese Option ist unwirksam, wenn das Terminal keine Hervorhebung unterstützt oder wenn weder der aktuelle Prozess noch irgendeiner seiner Elternprozesse im Unterbaum liegen, der angezeigt wird | |||
|- | |||
| -H || agiert wie -h, hebt aber stattdessen den angegebenen Prozess hervor | |||
* Im Gegensatz zu -h schlägt pstree mit -H fehl, falls keine Hervorhebung verfügbar ist | |||
|- | |||
| -l || zeigt lange Zeilen an | |||
* Standardmäßig werden Zeilen entweder gemäß der Unmgebungsvariable COLUMN oder auf die Breite der Anzeige beschnitten | |||
* Falls keine dieser Methoden funktioniert, werden standardmäßig 132 Spalten verwendet | |||
|- | |||
| -n || sortiert Prozesse mit dem gleichen Elternprozess nach PID anstatt nach Namen (numerische Sortierung) | |||
|- | |||
| -N || zeigt individuelle Bäume für jeden Namensraum des angegebenen Typs an | |||
* Folgende Typen sind verfügbar: ipc, mnt, net, pid, time, user, uts | |||
* Gewöhnliche Benutzer haben keinen Zugriff auf die Informationen der Prozesse anderer Benutzer, daher wird die Ausgabe eingeschränkt sein | |||
|- | |||
| -p || zeigt PIDs an | |||
* Die PIDs werden als Dezimalzahlen in Klammern nach jedem der Prozessnamen angezeigt. -p deaktiviert die Verdichtung implizit | |||
|- | |||
| -s || zeigt Elternprozesse des angegebenen Prozesses an | |||
|- | |||
| -S || zeigt Namensraum-Übergänge an | |||
* Wie mit -N wird die Ausgabe bei der Ausführung als gewöhnlicher Benutzer einge‐ | |||
schränkt | |||
|- | |||
| -t || zeigt vollständige Namen für Threads an, sofern verfügbar | |||
|- | |||
| -T || versteckt Threads und zeigt nur Prozesse an | |||
|- | |||
| -u || zeigt UID-Übergänge an | |||
* Wann immer sich eine UID eines Prozesses von der UID seines Elternprozesses unterscheidet, wird die neue UID in Klammern nach dem Prozessnamen angezeigt | |||
|- | |||
| -U || verwendet UTF-8-Zeichen (Unicode) zum Darstellen der Linien | |||
* Unter Linux 1.1-54 und neueren Versionen können Sie auf der Konsole mit echo -e ' 33%8' in den UTF-8-Modus wechseln und diesen mit echo -e ' 33%@' wieder verlassen | |||
|- | |||
| -V || zeigt Versionsinformationen an | |||
|- | |||
| -Z || zeigt die aktuellen Sicherheitsattribute des Prozesses an | |||
* Für SELinux-Systeme wird dies der Sicherheitskontext sein | |||
|} | |||
=== Parameter === | |||
=== Umgebungsvariablen === | |||
=== Exit-Status === | |||
== Anwendung == | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
</syntaxhighlight> | |||
=== Problembehebung === | |||
Einige Zeichensätze könnten zu den VT100-Zeichen inkompatibel sein | |||
== Konfiguration == | |||
=== Dateien === | |||
{| class="wikitable options" | |||
|- | |||
! Datei !! Beschreibung | |||
|- | |||
| /proc || Ort des /proc-Dateisystems | |||
|- | |||
| [[/proc/sys]] || | |||
|- | |||
| [[/etc/sysctl.conf]] || | |||
|} | |||
<noinclude> | |||
== Anhang == | |||
=== Siehe auch === | |||
* [[ps]](1) | |||
* [[top]](1) | |||
* [[proc]](5) | |||
{{Special:PrefixIndex/{{BASEPAGENAME}}/}} | |||
=== Dokumentation === | |||
; Man-Page | |||
;Info-Page | |||
=== Links === | |||
==== Projekt ==== | |||
==== Weblinks ==== | |||
{{DEFAULTSORT:pstree}} | |||
{{DISPLAYTITLE:pstree}} | |||
[[Kategorie:Linux/Prozess/Befehl]] | |||
[[Kategorie:Linux/Befehl]] | |||
</noinclude> |
Aktuelle Version vom 5. April 2025, 11:50 Uhr
pstree - Prozesse in Baumansicht anzeigen
Beschreibung
pstree zeigt laufende Prozesse in einer Baumansicht an
- Die Wurzel des Baums wird anhand der angegebenen PID oder mittels init gewählt, falls die PID weggelassen wird
- Wenn ein Benutzername angegeben wird, werden die Wurzeln aller Prozessbäume anhand der Prozesse gewählt, die diesem Benutzer gehören
pstree führt identische Zweige visuell zusammen, indem diese in eckige Klammern gesetzt werden und ihnen die Anzahl der Wiederholungen vorangestellt wird
- Beispiel
init-+-getty |-getty |-getty `-getty
zu
init---4*[getty]
- Kind-Threads
Kind-Threads eines Prozesses werden unter dem Elternprozess angezeigt und der Prozessname in geschweifte Klammern gesetzt, zum Beispiel
icecast2---13*[{icecast2}]
- X11
Falls pstree als pstree.x11 aufgerufen wird, bittet es den Benutzer am Ende der Zeile, die Eingabetaste zu drücken und kehrt nicht zurück, bis dies geschehen ist
- Dies ist nützlich, wenn pstree in einem X-Terminal ausgeführt wird
- hidepid
Bestimmte Kernel- oder Einhängeparameter, wie die Option hidepid für procfs, verstecken Informationen für einige Prozesse
- In diesen Situationen versucht pstree, die Baumansicht ohne diese Informationen zu erstellen, wobei die Prozessnamen als Fragezeichen dargestellt werden
Beispiel
pstree
init-+-actived
|-atd
|-cron
|-gpm
|-httpd---httpd
|-in.identd---in.identd---5*[in.identd]
|-inetd
|-kflushd
|-klogd
|-kpiod
|-kswapd
|-kupdate
|-lockd---rpciod
|-2*[login---bash---ssh]
|-login---sh
|-2*[mingetty]
|-nscd---nscd---5*[nscd]
|-portmap
|-syslogd
Das Beispiel verdeutlicht, dass init der Elternprozess aller Prozesse ist. pstree versucht per Voreinstellung identische Prozesse in der Darstellung zusammen zu fassen, so bedeutet 2*[mingetty], dass 2 Prozesse das Kommando mingetty ausführen.
Mit der Option -c wird diese Zusammenfassung abgeschaltet
...
|-in.identd---in.identd-+-in.identd
| |-in.identd
| |-in.identd
| |-in.identd
| `-in.identd
...
Installation
pstree ist Teil des Pakets psmisc
Aufruf
pstree [-a, --arguments] [-c, --compact-not] [-C, --color Attribut] [-g, --show-pgids] [-h, --highlight-all, -H PID, --high‐light-pid PID] [-l, --long] [-n, --numeric-sort] [-N, --ns-sort Namensraum] [-p, --show-pids] [-s, --show-parents] [-S, --ns-changes] [-t, --thread-names] [-T, --hide-threads] [-u, --uid-changes] [-Z, --security-context] [-A, --ascii, -G, --vt100, -U, --unicode] [PID, Benutzer]
pstree -V, --version
Optionen
Unix | Beschreibung |
---|---|
-a | zeigt Befehlszeilenargumente an
|
-A | verwendet ASCII-Zeichen zum Darstellen des Baums |
-c | deaktiviert die Verdichtung identischer Unterbäume
|
-C | stellt den Prozessnamen anhand des angegebenen Attributs farbig dar
|
-g | zeigt Prozessgruppenkennungen (PGIDs) an
|
-G | verwendet VT100-Zeichen zum Darstellen von Linien |
-h | hebt den aktuellen Prozess und dessen Elternprozess hervor
|
-H | agiert wie -h, hebt aber stattdessen den angegebenen Prozess hervor
|
-l | zeigt lange Zeilen an
|
-n | sortiert Prozesse mit dem gleichen Elternprozess nach PID anstatt nach Namen (numerische Sortierung) |
-N | zeigt individuelle Bäume für jeden Namensraum des angegebenen Typs an
|
-p | zeigt PIDs an
|
-s | zeigt Elternprozesse des angegebenen Prozesses an |
-S | zeigt Namensraum-Übergänge an
schränkt |
-t | zeigt vollständige Namen für Threads an, sofern verfügbar |
-T | versteckt Threads und zeigt nur Prozesse an |
-u | zeigt UID-Übergänge an
|
-U | verwendet UTF-8-Zeichen (Unicode) zum Darstellen der Linien
|
-V | zeigt Versionsinformationen an |
-Z | zeigt die aktuellen Sicherheitsattribute des Prozesses an
|
Parameter
Umgebungsvariablen
Exit-Status
Anwendung
Problembehebung
Einige Zeichensätze könnten zu den VT100-Zeichen inkompatibel sein
Konfiguration
Dateien
Datei | Beschreibung |
---|---|
/proc | Ort des /proc-Dateisystems |
/proc/sys | |
/etc/sysctl.conf |
Anhang
Siehe auch
Dokumentation
- Man-Page
- Info-Page
Links
Projekt
Weblinks