Befehl | Beschreibung | Syntax/Beispiel | Plattform-Hinweise |
ps | Zeigt Informationen über laufende Prozesse an. | ps aux | Alle Plattformen |
top | Interaktives Echtzeit-Tool zur Anzeige von Prozessinformationen. | top | Alle Plattformen |
htop | Erweiterte Version von top mit verbesserter Bedienoberfläche. | htop | Möglicherweise nachinstallieren |
pstree | Zeigt Prozesse in einer baumartigen Struktur an. | pstree | Alle Plattformen |
kill | Sendet Signale an Prozesse, meist zum Beenden. | kill -9 PID | Alle Plattformen |
killall | Beendet Prozesse anhand ihres Namens. | killall name | Alle Plattformen |
pkill | Beendet Prozesse anhand eines Musterabgleichs ihres Namens. | pkill -f pattern | Alle Plattformen |
pgrep | Sucht Prozesse anhand eines Musterabgleichs und gibt die PIDs aus. | pgrep -l name | Alle Plattformen |
nice | Startet einen neuen Prozess mit angepasster Priorität. | nice -n 10 command | Alle Plattformen |
renice | Ändert die Priorität eines laufenden Prozesses. | renice -n 5 -p PID | Alle Plattformen |
nohup | Führt einen Befehl aus, der beim Abmelden nicht beendet wird. | nohup command & | Alle Plattformen |
bg | Führt einen angehaltenen Prozess im Hintergrund weiter aus. | bg %Jobnummer | Alle Plattformen |
fg | Holt einen Hintergrundprozess in den Vordergrund. | fg %Jobnummer | Alle Plattformen |
jobs | Listet aktuelle Jobs der Shell auf. | jobs | Alle Plattformen |
lsof | Listet offene Dateien und zugehörige Prozesse auf. | lsof -p PID | Alle Plattformen |
strace | Verfolgt Systemaufrufe eines Prozesses zur Fehlersuche. | strace -p PID | Alle Plattformen |
systemctl | Verwaltung von Systemd-Diensten und -Einheiten. | systemctl status | Systeme mit Systemd (Ubuntu, RHEL 7+, CentOS 7+) |
service | Startet, stoppt oder überprüft Dienste (älterer Befehl). | service name status | Systeme mit SysVinit (ältere Systeme) |
init | Ändert den Runlevel des Systems oder führt einen Neustart/Shutdown durch. | init 0 | Systeme mit SysVinit |
chrt | Ändert die Scheduling-Priorität eines Prozesses. | chrt -p 0 PID | Alle Plattformen |
timeout | Führt einen Befehl für eine bestimmte Zeit aus. | timeout 5s command | Alle Plattformen |
pmap | Zeigt die Speicherzuordnung eines Prozesses an. | pmap PID | Alle Plattformen |
vmstat | Zeigt Systemleistung und Speichernutzung an. | vmstat 1 | Alle Plattformen |
iostat | Zeigt CPU- und I/O-Statistiken an. | iostat | Alle Plattformen |
sar | System Activity Reporter, sammelt und berichtet Systemaktivitätsdaten. | sar -u 1 3 | Möglicherweise nachinstallieren (Paket sysstat) |
pidof | Gibt die PID eines laufenden Prozesses anhand seines Namens zurück. | pidof process-name | Alle Plattformen |
watch | Führt periodisch einen Befehl aus und zeigt das Ergebnis an. | watch command | Alle Plattformen |
Plattform-Hinweise:
- Alle Plattformen: Diese Befehle sind auf den meisten Linux-Distributionen verfügbar.
- Möglicherweise nachinstallieren: Einige Befehle wie htop oder sar sind nicht standardmäßig installiert und müssen über den Paketmanager hinzugefügt werden.
- Ubuntu/Debian: Installation mit sudo apt install htop.
- RHEL/CentOS: Installation mit sudo yum install htop.
- Systeme mit Systemd: Neuere Distributionen wie Ubuntu (ab 15.04), RHEL/CentOS (ab Version 7) nutzen Systemd.
- Systeme mit SysVinit: Ältere Systeme nutzen Init-Skripte und den service-Befehl.
Erläuterungen zu ausgewählten Befehlen:
- ps: Mit ps aux werden alle Prozesse aller Benutzer angezeigt. Option a für alle Benutzer, u für detailliertes Format, x für Prozesse ohne steuerndes Terminal.
- top und htop:
- top: Zeigt laufende Prozesse in Echtzeit an, sortiert nach CPU-Auslastung.
- htop: Bietet eine farbige, interaktive Oberfläche mit Mausunterstützung und zusätzlichen Funktionen wie Scrollen und Sortieren.
- kill, killall, pkill:
- kill: Beendet einen Prozess anhand seiner PID.
- killall: Beendet alle Prozesse mit einem bestimmten Namen.
- pkill: Beendet Prozesse basierend auf einem Musterabgleich.
- nice und renice:
- nice: Startet einen Prozess mit geänderter Priorität (Niceness-Wert von -20 bis 19).
- renice: Ändert die Priorität eines laufenden Prozesses.
- jobs, bg, fg:
- jobs: Listet alle laufenden oder angehaltenen Jobs in der aktuellen Shell auf.
- bg: Setzt einen angehaltenen Job im Hintergrund fort.
- fg: Holt einen Hintergrundjob in den Vordergrund.
- lsof:
- Nützlich zum Identifizieren von Prozessen, die auf bestimmte Dateien oder Ports zugreifen.
- Beispiel: lsof -i :80 zeigt Prozesse an, die Port 80 verwenden.
- strace:
- Hilft bei der Fehlersuche, indem es Systemaufrufe und Signale eines Prozesses protokolliert.
- Kann verwendet werden, um zu verstehen, warum ein Prozess abstürzt oder hängt.
- systemctl:
- Zentraler Befehl zur Verwaltung von Diensten unter Systemd.
- Beispiele:
- systemctl start service-name: Startet einen Dienst.
- systemctl stop service-name: Stoppt einen Dienst.
- systemctl enable service-name: Aktiviert den automatischen Start beim Booten.
- systemctl disable service-name: Deaktiviert den automatischen Start.
- service:
- Wird auf älteren Systemen oder solchen ohne Systemd verwendet.
- Beispiel: service ssh status prüft den Status des SSH-Dienstes.
- chrt:
- Kann die Scheduling-Richtlinie und Priorität eines Prozesses ändern.
- Beispiel: chrt -f -p 99 PID setzt einen Prozess auf Echtzeit-Priorität.
- timeout:
- Beendet einen Prozess nach einer festgelegten Zeit.
- Nützlich, um zu verhindern, dass Prozesse zu lange laufen.
- pmap:
- Zeigt detaillierte Informationen zur Speichernutzung eines Prozesses.
- Hilfreich bei der Analyse von Speicherlecks.
- vmstat und iostat:
- vmstat: Zeigt Statistiken zu virtueller Speicher, CPU und Systemprozessen.
- iostat: Überwacht System-E/A-Geräte und gibt CPU-Statistiken aus.
- sar:
- Teil des sysstat-Pakets.
- Sammelt historische Daten über Systemaktivität.
- Kann verwendet werden, um Leistungsprobleme über einen längeren Zeitraum zu analysieren.
Beispiel zur Installation fehlender Befehle:
- Ubuntu/Debian:
- sudo apt update
- sudo apt install htop sysstat
- RHEL/CentOS:
- sudo yum update
- sudo yum install htop sysstat
Tipps:
- Prozessprioritäten verstehen: Niedrigere Niceness-Werte bedeuten höhere Priorität. Standardmäßig haben Prozesse einen Niceness-Wert von 0.
- Signale mit kill senden:
- kill -SIGTERM PID oder kill -15 PID: Beendet einen Prozess freundlich.
- kill -SIGKILL PID oder kill -9 PID: Beendet einen Prozess sofort.
- Angehaltene Prozesse identifizieren:
- Ein Prozess kann mit Ctrl+Z angehalten werden.
- Mit jobs kann man den angehaltenen Prozess sehen und mit bg oder fg fortsetzen.