Harting Development

Linux-Prozesse anzeigen und verwalten mit dem Befehl "show processes"

Lukas Fuchs vor 7 Monaten in  Performance-Optimierung 3 Minuten Lesedauer

Was ist der Befehl "show processes"?

Der Befehl show processes ist ein leistungsstarkes Werkzeug zur Anzeige und Verwaltung laufender Prozesse auf deinem Linux-System. Er bietet einen detaillierten Überblick über alle aktiven Prozesse, einschließlich ihrer PIDs (Prozess-IDs), Benutzern, Befehlszeilenargumenten und vielem mehr.

Warum solltest du den Befehl "show processes" verwenden?

  • Überwachung der Systemleistung: Identifiziere ressourcenintensive Prozesse, die dein System verlangsamen.
  • Fehlersuche bei Anwendungen: Verfolge die Ausführung von Prozessen, um Fehler oder Abstürze zu diagnostizieren.
  • Verwaltung von Prozessen: Beende, starte neu oder priorisiere Prozesse nach Bedarf.
  • Sicherheit: Identifiziere unerwartete oder verdächtige Prozesse, die auf Sicherheitsbedrohungen hinweisen könnten.

Syntax und Optionen des Befehls "show processes"

Die Syntax des Befehls "show processes" lautet:

show processes [Optionen] [Filter]

Optionen

Du kannst die folgenden Optionen verwenden, um die Ausgabe des Befehls "show processes" anzupassen:

  • -a, --all: Zeigt alle Prozesse an, auch die ausgeblendeten.
  • -e, --executable: Zeigt den Pfad zur ausführbaren Datei des Prozesses an.
  • -f, --full: Zeigt ausführliche Informationen über jeden Prozess an, einschließlich Status, CPU-Auslastung und Speicherverbrauch.
  • -h, --help: Zeigt die Hilfe zum Befehl an.
  • -n, --numeric: Zeigt die numerische Benutzer-ID anstelle des Benutzernamens an.
  • -t, --sort: Sortiert die Prozessliste nach einer angegebenen Spalte (z. B. CPU-Auslastung, Speicherverbrauch).
  • -u, --user: Zeigt nur die Prozesse an, die einem bestimmten Benutzer gehören.

Filter

Du kannst die folgenden Filter verwenden, um die angezeigten Prozesse einzugrenzen:

  • [Benutzername] oder [-u Benutzername]: Zeigt nur die Prozesse an, die einem bestimmten Benutzer gehören.
  • [PID] oder [-p PID]: Zeigt nur den Prozess mit der angegebenen Prozess-ID (PID) an.
  • [Prozessname] oder [-n Prozessname]: Zeigt nur die Prozesse an, deren Name den angegebenen Kriterien entspricht (Teilübereinstimmung).
  • [Status] oder [-s Status]: Zeigt nur die Prozesse an, die sich in dem angegebenen Status befinden (z. B. "running", "sleeping").

Anzeigen aller laufenden Prozesse

Wenn du alle laufenden Prozesse auf deinem Linux-System anzeigen möchtest, kannst du den Befehl show processes ohne Angabe von Optionen verwenden:

show processes

Diese einfache Verwendung listet alle aktuell ausgeführten Prozesse auf, zusammen mit Informationen wie:

  • PID (Process Identifier): Die eindeutige Kennung des Prozesses
  • USER: Der Benutzer, unter dem der Prozess läuft
  • CPU: Die CPU-Auslastung des Prozesses
  • MEM: Der vom Prozess verwendete Arbeitsspeicher
  • VSZ: Die Größe des virtuellen Speichers des Prozesses
  • RSS: Die vom Prozess verwendete Größe des physischen Speichers
  • TTY: Das Terminal, von dem aus der Prozess gestartet wurde
  • STAT: Der Status des Prozesses (z. B. "S" für schlafend, "R" für laufend)
  • START: Die Startzeit des Prozesses
  • TIME: Die vom Prozess verbrauchte CPU-Zeit
  • COMMAND: Der Befehl, der den Prozess gestartet hat

Anzeigen von Prozessen nach Benutzer, PID oder Name filtern

Du kannst den Befehl "show processes" verwenden, um Prozesse nach verschiedenen Kriterien zu filtern. Auf diese Weise kannst du die Liste der laufenden Prozesse gezielter einschränken und Informationen zu bestimmten Prozessen abrufen.

Filterung nach Benutzer

Um Prozesse anzuzeigen, die von einem bestimmten Benutzer ausgeführt werden, verwende die Option -u gefolgt vom Benutzernamen. Beispielsweise:

show processes -u simon

Filterung nach PID

Du kannst auch Prozesse nach ihrer Prozess-ID (PID) filtern. Verwende die Option -p gefolgt von der PID des Prozesses. Beispielsweise:

show processes -p 1234

Filterung nach Name

Um Prozesse nach ihrem Namen zu filtern, verwende die Option -n. Du kannst hierbei entweder den vollständigen Namen des Prozesses oder einen Teil davon angeben. Beispielsweise:

show processes -n firefox

Dadurch werden alle Prozesse angezeigt, die den Begriff "firefox" in ihrem Namen enthalten.

Anzeigen spezifischer Prozessinformationen

Möchtest du detaillierte Informationen zu einem bestimmten Prozess abrufen, kannst du die Option -e verwenden, um weitere Spalten in die Ausgabe aufzunehmen. Diese Spalten enthalten Informationen wie:

  • PID (Prozess-ID): Die eindeutige Identifikationsnummer des Prozesses
  • USER (Benutzer): Der Benutzer, der den Prozess gestartet hat
  • NICE (Nizza): Die Priorität des Prozesses
  • PR (Priorität): Die effektive Priorität des Prozesses
  • VIRT (Virtueller Speicher): Die Größe des virtuellen Speichers, den der Prozess belegt
  • RES (Resident): Die Größe des physischen Speichers, den der Prozess belegt
  • STAT (Status): Der aktuelle Ausführungsstatus des Prozesses (z. B. laufend, schlafend, gestoppt)
  • TIME+ (Gesamtzeit): Die Gesamtzeit, die der Prozess in der CPU verbracht hat
  • COMMAND (Befehl): Der Befehl oder das Programm, das gestartet wurde

Beispiel:

Um beispielsweise detaillierte Informationen zu allen Prozessen, die von dir gestartet wurden, anzuzeigen, kannst du folgenden Befehl verwenden:

show processes -e user,pid,nice,pr,virt,res,stat,time+,command | grep user=dein_benutzername

Diese Ausgabe enthält spezifischere Informationen zu jedem deiner laufenden Prozesse.

Sortieren der Prozessliste

Nachdem du deine Prozessliste angezeigt hast, kannst du sie für eine bessere Übersichtlichkeit sortieren. Der Befehl show processes bietet verschiedene Sortieroptionen, die es dir ermöglichen, die Liste nach bestimmten Kriterien wie PID, Benutzername, Prozessname oder Ressourcennutzung zu sortieren.

Sortieren nach PID

Um die Prozessliste nach der Prozess-ID (PID) zu sortieren, verwende die Option -p:

show processes -p

Dies sortiert die Liste in aufsteigender Reihenfolge nach PID. Um sie in absteigender Reihenfolge zu sortieren, verwende die Option -r:

show processes -pr

Sortieren nach Benutzername

Zum Sortieren nach dem Benutzer, dem der Prozess gehört, verwende die Option -u:

show processes -u

Diese Option sortiert die Liste in aufsteigender Reihenfolge nach Benutzername.

Sortieren nach Prozessname

Um nach dem Prozessnamen zu sortieren, verwende die Option -n:

show processes -n

Dadurch wird die Liste in aufsteigender Reihenfolge nach Prozessname sortiert.

Sortieren nach Ressourcennutzung

Du kannst die Prozessliste auch nach der Ressourcennutzung sortieren, wie z. B. CPU-, Speicher- oder Auslastung der Datenträger-E/A. Dies ist hilfreich, um ressourcenintensive Prozesse zu identifizieren.

Hinweis: Die verfügbaren Sortieroptionen hängen von deinem Betriebssystem und der Version von show processes ab. Konsultiere die Hilfeseite des Befehls für genaue Informationen.

Verwalten von Prozessen mit anderen Befehlen (z. B. "kill", "nice")

Neben dem Befehl "show processes" stehen dir verschiedene andere Befehlszeilenbefehle zur Verfügung, mit denen du Prozesse verwalten kannst.

Befehl "kill"

Der Befehl "kill" ermöglicht es dir, Prozesse zu beenden. Seine Syntax lautet:

kill [Optionen] PID

Dabei ist PID die Prozess-ID des Prozesses, den du beenden möchtest. Du kannst mehrere PIDs angeben, um mehrere Prozesse gleichzeitig zu beenden.

Wenn du einen Prozess ohne Angabe von Optionen beendest, wird das Signal SIGTERM gesendet. Dieses Signal fordert den Prozess auf, sich selbst zu beenden. Sollte der Prozess nicht darauf reagieren, kannst du das Signal SIGKILL senden, das den Prozess sofort beendet:

kill -9 PID

Befehl "nice"

Der Befehl "nice" ermöglicht es dir, die Priorität eines laufenden Prozesses anzupassen. Die Syntax lautet:

nice [Optionen] Befehl [Argumente]

Wobei "Befehl" der Befehl ist, den du ausführen möchtest, und "Argumente" die Argumente für den Befehl sind. Die Option "-n" kann verwendet werden, um die Priorität des Prozesses anzugeben, wobei niedrigere Werte eine höhere Priorität anzeigen:

nice -n 20 Befehl Argumente

Dies teilt dem System mit, dass dem angegebenen Prozess eine niedrigere Priorität eingeräumt werden soll, sodass andere Prozesse mit höherer Priorität Ressourcen bevorzugt nutzen können.

Andere Befehle zur Prozessverwaltung

Neben "kill" und "nice" gibt es noch einige andere Befehle, die dir helfen können, Prozesse zu verwalten:

  • ps: Zeigt Informationen über laufende Prozesse an, ähnlich wie "show processes".
  • top: Bietet eine Echtzeitansicht der Ressourcenauslastung des Systems, einschließlich Informationen über Prozesse.
  • htop: Eine interaktive und benutzerfreundliche Alternative zu "top".
  • pgrep: Sucht nach Prozessen basierend auf einem angegebenen Muster.
  • pkill: Beendet Prozesse basierend auf einem angegebenen Muster.

Folge uns

Neue Posts

Beliebte Posts