Direkt zum Hauptinhalt springen
eLearner.app
Modul 5 · Lektion 1 von 210/11 im Kurs~12 min
Lektionen des Moduls (1/2)

Prozessverwaltung (ps und kill)

Unter Linux wird jedes laufende Programm als Prozess bezeichnet. Jedem Prozess wird eine eindeutige numerische ID zugewiesen, die als PID (Process ID) bezeichnet wird. Zu wissen, wie man diese Prozesse überwacht und verwaltet, ist grundlegend für die Aufrechterhaltung der Systemleistung und -stabilität.


Prozesse überwachen: ps

Der Befehl ps (process status) zeigt eine Momentaufnahme der aktiven Prozesse auf dem System. Standardmäßig zeigt er nur die Prozesse an, die dem aktuellen Benutzer im aktiven Terminal zugeordnet sind.

Für eine vollständige Anzeige aller im System laufenden Prozesse wird üblicherweise die Kombination der BSD-Optionen aux verwendet:

  • a: Zeigt die Prozesse aller Benutzer an.
  • u: Zeigt den besitzenden Benutzer und Details zur CPU-/Speichernutzung an.
  • x: Zeigt auch Prozesse an, die keinem Terminal zugeordnet sind (z. B. Hintergrunddienste).
Bash
ps aux

Die Ausgabe von ps aux ist eine strukturierte Tabelle mit wichtigen Spalten wie USER, PID, %CPU, %MEM und COMMAND (der Befehl, der den Prozess gestartet hat).


Prozesse beenden: kill und killall

Wenn ein Prozess nicht mehr reagiert oder zu viele Ressourcen verbraucht, können wir ihn beenden, indem wir ihm ein Signal senden.

Der Befehl kill

Der Befehl kill sendet ein Signal an einen Prozess unter Angabe seiner PID:

Bash
kill 2048       # Sendet das SIGTERM-Signal (15) und fordert ein sauberes Beenden an
kill -9 2048    # Sendet das SIGKILL-Signal (9) und erzwingt das sofortige Beenden

[!WARNING] Verwende kill -9 nur als letzte Option, da das Programm dadurch Daten nicht speichern oder geöffnete Dateien nicht sauber schließen kann.

Der Befehl killall

Wenn du die PID nicht kennst oder alle Prozesse eines Programms anhand ihres Namens beenden möchtest, kannst du killall verwenden:

Bash
killall python  # Beendet alle Prozesse mit dem Namen 'python'

Probier es aus

Ejercicio 1: Elenca tutti i processi

Übung#linux.m5.l1.e1
Versuche: 0Wird geladen…

Zeige die Liste aller laufenden Prozesse auf dem System im vollständigen Format unter Verwendung der Optionen 'aux' an.

Editor wird geladen…
Hinweis anzeigen

Verwende den Befehl 'ps' gefolgt von dem Argument 'aux'.

Lösung nach 3 Versuchen verfügbar

Ejercicio 2: Termina un processo per PID

Übung#linux.m5.l1.e2
Versuche: 0Wird geladen…

Beende den Python-Prozess mit der PID 2048 unter Verwendung des Befehls 'kill'.

Editor wird geladen…
Hinweis anzeigen

Verwende 'kill' gefolgt von der PID des Prozesses (2048).

Lösung nach 3 Versuchen verfügbar

Ejercicio 3: Termina tutti i processi per nome

Übung#linux.m5.l1.e3
Versuche: 0Wird geladen…

Beende alle aktiven Prozesse, die dem Programm 'python' zugeordnet sind, unter Verwendung des Befehls 'killall'.

Editor wird geladen…
Hinweis anzeigen

Verwende 'killall' gefolgt vom Programmnamen, in diesem Fall 'python'.

Lösung nach 3 Versuchen verfügbar