Wie man laufende Prozesse unter Linux anzeigt

Von einer Benutzeranwendung bis hin zu einem Systemdienst, alles ist in Linux ein eigener, separater Prozess. Selbst wenn Dein Computer einen leeren Terminalbildschirm anzeigt, laufen zweifellos eine Reihe von Prozessen im Hintergrund ab. Es gibt verschiedene Linux-Tools, mit denen wir alle Prozesse auf unserem System identifizieren können, und genau das werden wir in diesem Tutorial behandeln.

Auflisten von Prozessen mit dem ps-Befehl

Der Befehl ps kann alle Prozesse auflisten, die auf einem Linux-System mit der Option -e laufen.

ps -e

Prozesse mit ps-Befehl auflisten

Es ist normal, dass in einem System eine große Anzahl von Prozessen gleichzeitig läuft, daher ist es einfacher, diese Liste zu sichten, indem man den Befehl über die Pipeline an mehr Prozesse weiterleitet. Zum Beispiel, um 15 Zeilen auf einmal zu sehen:

ps -e | more -15

Die Ausgabe von ps zeigt uns jeden laufenden Prozess, seine jeweilige Prozess-ID (abgekürzt PID) und die TTY (Terminalschnittstelle, auf der der Prozess läuft). Ein Fragezeichen in der TTY-Spalte bedeutet, dass der Prozess nicht an eine Terminalschnittstelle angeschlossen ist – er läuft nur im Hintergrund.

Möglicherweise müssen Sie die PID eines Prozesses kennen, um ihn abzubrechen, oder die TTY, damit Sie zum geöffneten Prozess zurückkehren können, indem Sie sich wieder an das richtige Terminalfenster anschließen.

Eine weitere nützliche Option mit ps ist die Option -aux.

ps -aux

Wie bei der vorherigen Option werden hier alle auf Ihrem System laufenden Prozesse aufgelistet. Aber sie listet auch die aktuelle CPU- und RAM-Nutzung jedes Prozesses auf, sowie den Befehl, der jeden Prozess hervorgebracht hat.

15 Prozesse mit mehr Befehlsgewalt auflisten

Einen Prozess mit pgrep finden

Das pgrep-Commad kombiniert für uns ps und grep. Wir können den Namen – oder einen Teil des Namens – eines gesuchten Prozesses angeben, und pgrep gibt die entsprechenden Prozess-IDs zurück.

Um beispielsweise nach einem SSH-bezogenen Prozess auf Ihrem System zu suchen, würden Sie Folgendes eingeben:

pgrep ssh

Linux-Befehl pgrep

Wie im obigen Screenshot zu sehen ist, hat pgrep einen SSH-Prozess mit einer PID von 1143 gefunden. Zur weiteren Verifizierung überprüfen wir das mit dem Befehl ps:

ps -e | grep 1143

ssh-Prozess mit pgrep finden

Laufende Prozesse mit top anzeigen

Das oberste Dienstprogramm ist natürlich ein Kommandozeilen-Tool, aber es bietet eine interaktive Ausgabe aller derzeit laufenden Prozesse und zeigt die Informationen so an, wie man sie in einer grafischen Oberfläche erwartet. Der Einstieg ist einfach, tippen Sie einfach oben:

top

Linux-Spitzenbefehl

Die Ausgabe von oben liefert uns eine Menge Informationen, einschließlich der gesamten CPU- und RAM-Nutzung auf unserem System. Aber wir sind hier wegen der Liste der Prozesse, die Sie direkt darunter finden.

Das Terminal-Fenster ist einfach nicht groß genug, um top alle laufenden Prozesse aufzulisten, also zeigt top so viele wie möglich an und ordnet sie nach der Nutzung der Systemressourcen. Mit anderen Worten, die Prozesse, die die meiste CPU und den meisten RAM verbrauchen, werden oben aufgelistet. Weniger anspruchsvolle Prozesse werden in der Liste weiter unten angezeigt, möglicherweise vom Terminalfenster abgeschnitten.

Verwenden Sie die Pfeiltastenauf Ihrer Tastatur, um die Liste der Prozesse nach oben und unten zu durchlaufen.

Es gibt eine ganze Reihe von Informationen über jeden laufenden Prozess. Hier ein kurzer Überblick über die Bedeutung dieser verschiedenen Spalten:

  • PID: Die Prozess-ID jeder Aufgabe.
  • PR: Die Planungspriorität einer Aufgabe.
  • NI: Der schöne Wert einer Aufgabe. Negative Zahlen weisen auf eine höhere Priorität hin.
  • VIRT: Die Menge des verwendeten virtuellen Speichers.
  • RES: Die Menge des verwendeten residenten Speichers.
  • SHR: Die Menge des gemeinsam genutzten Speichers.
  • S: Der Status einer Aufgabe (R=laufend, S=schlafend).
  • %CPU: Aktueller CPU-Prozentsatz, der von einem Task verwendet wird.
  • %MEM: Aktueller RAM-Prozentsatz, der von einer Aufgabe verwendet wird.
  • ZEIT+: Die CPU-Zeit einer Aufgabe.
  • COMMAND: Der Befehl, mit dem der Task gelawned wurde.

Wie bereits erwähnt, ist oben interaktiv, so dass wir einige Tastaturkürzel verwenden können, um ein paar nette Dinge damit zu tun. Wir werden einige der praktischeren unten durchgehen.

Drücken Sie die Taste z, um Prozesse mit Farbcode auszuführen. Dadurch ist es einfacher, laufende Aufgaben von schlafenden oder Zombie-Prozessen zu unterscheiden.

Laufende Prozesse finden

Drücken Sie die Taste c, um den vollständigen Befehl für jede Aufgabe zu erhalten. Dies zeigt den absoluten Pfad, zusammen mit allen verwendeten Optionen.

Vollständige Prozessbefehle anzeigen

Drücken Sie die Taste k, um einen laufenden Prozess abzubrechen, und zwar direkt vom obersten Dienstprogramm aus. Dies erspart es ein wenig Zeit, das Dienstprogramm zu verlassen und einen separaten Kill-Befehl zu erteilen. Sie müssen nur die PID des Prozesses, den Sie beenden möchten, eingeben:

Prozesse mit Befehl von oben beenden

Drücken Sie die Taste r, um die Priorität eines Prozesses mit renice zu ändern. Geben Sie die PID des Prozesses ein, den Sie neu bewerten möchten:

Priorität des Änderungsprozesses

Für weitere Optionen drücken Sie die h (Hilfe)-Taste, um alles andere zu sehen, was oben gemacht werden kann.

Wenn Sie die Verwendung des oberen Dienstprogramms beendet haben, können Sie das Tool verlassen und zum Terminal zurückkehren, indem Sie q drücken.

Laufende Prozesse mit htop anzeigen

Das htop-Utility baut auf der Spitze auf und ist etwas benutzerfreundlicher und angenehmer zu betrachten. Der einzige Nachteil ist, dass es nicht auf allen Linux-Distributionen standardmäßig installiert ist, so dass Sie es möglicherweise zuerst installieren müssen. Es sollte sich in den Repositories Ihres Betriebssystems befinden, daher hier die Anleitung zur Installation mit Ihrem Paketmanager:

Debian und Ubuntu:

sudo apt-get install htop

CentOS und Fedora:

dnf install htop

Roter Hut:

yum install htop

Nach der Installation geben Sie einfach htop ein, um das Dienstprogramm auszuführen.

htop

Prozesse mit htop anzeigen

Sie können mit der Maus mit htop interagieren, und die verschiedenen Tastaturbefehle sind am unteren Rand des Terminalfensters aufgelistet. Es funktioniert im Wesentlichen gleich wie oben, aber mit einer saubereren und leichter verständlichen Oberfläche.

Schlussfolgerung

In diesem Tutorial haben wir Dir einige Methoden zur Anzeige der laufenden Prozesse auf einem Linux-System gezeigt. Welche Methode Du verwendest, hängt von der jeweiligen Situation und Deinen persönlichen Vorlieben ab. Jede Methode hat ihre eigenen Vorteile.

Das könnte dich auch interessieren …