systemctl ·
service ·
ps ·
top ·
kill ·
journalctl
Ubuntu verwendet systemd als Init-System. Mit diesen Befehlen können Sie Dienste starten, stoppen, den Status prüfen und Prozesse überwachen – essenziell für die Server-Administration.
Ubuntu-Tipp: Die meisten Service-Befehle benötigen sudo für Änderungen. systemctl ist die moderne Alternative zu service.
systemctl ist das Hauptwerkzeug für die Verwaltung von systemd-Diensten – starten, stoppen, neustarten, aktivieren und Statusabfrage.
| Befehl | Beschreibung |
|---|---|
| sudo systemctl start <dienst> | Dienst starten |
| sudo systemctl stop <dienst> | Dienst stoppen |
| sudo systemctl restart <dienst> | Dienst neustarten |
| sudo systemctl reload <dienst> | Konfiguration neu laden (ohne Neustart) |
| sudo systemctl enable <dienst> | Dienst beim Systemstart aktivieren |
| sudo systemctl disable <dienst> | Dienst beim Systemstart deaktivieren |
| systemctl status <dienst> | Status des Dienstes anzeigen |
| systemctl list-units | Alle aktiven Dienste anzeigen |
| systemctl list-units --type=service | Nur Service-Units anzeigen |
| systemctl list-unit-files | Alle Dienst-Dateien anzeigen |
systemctl status nginx:systemctl reload statt restart verwenden – der Dienst bleibt verfügbar, die neue Konfiguration wird eingelesen.
service ist der klassische Befehl für die Verwaltung von SysVinit-Diensten. Unter Ubuntu wird er oft für Kompatibilität mit älteren Skripten verwendet – systemctl ist die moderne Alternative.
| Befehl | Beschreibung |
|---|---|
| sudo service <dienst> start | Dienst starten |
| sudo service <dienst> stop | Dienst stoppen |
| sudo service <dienst> restart | Dienst neustarten |
| sudo service <dienst> reload | Konfiguration neu laden |
| sudo service <dienst> status | Status anzeigen |
| sudo service --status-all | Alle Dienste mit Status anzeigen |
sudo service --status-all:service --status-all zeigt schnell alle Dienste mit ihrem aktuellen Status. + = läuft, - = gestoppt, ? = unbekannter Status.
ps zeigt Informationen über aktive Prozesse an – PID, CPU-Auslastung, Speichernutzung und den ausführenden Befehl.
| Option | Beschreibung |
|---|---|
| aux | Alle Prozesse aller Benutzer mit ausführlichen Informationen |
| ef | Alle Prozesse mit vollständigem Befehl |
| u <user> | Prozesse eines bestimmten Benutzers anzeigen |
| --forest | Prozesse als Baumstruktur anzeigen |
| eo pid,comm,%cpu,%mem | Bestimmte Spalten auswählen |
ps aux:ps aux | grep <prozess> ist die Standard-Methode, um nach einem bestimmten Prozess zu suchen. Filtern Sie mit grep -v grep den Grep-Befehl selbst heraus.
top zeigt laufende Prozesse in Echtzeit an – sortiert nach CPU-Auslastung. htop ist die modernere, interaktivere Alternative.
| Taste | Beschreibung |
|---|---|
| q | Beenden |
| P | Nach CPU-Auslastung sortieren |
| M | Nach Speichernutzung sortieren |
| k | Prozess beenden (PID eingeben) |
| u | Nur Prozesse eines Benutzers anzeigen |
| H | Threads anzeigen |
htop – es bietet eine übersichtlichere Darstellung, Farben, Mausunterstützung und einfachere Prozessverwaltung (sudo apt install htop).
kill sendet Signale an Prozesse – standardmäßig SIGTERM (sanftes Beenden). Mit -9 wird SIGKILL gesendet (hartes Beenden).
| Signal | Nummer | Beschreibung |
|---|---|---|
| SIGTERM | 15 | Sanftes Beenden (Standard) – Prozess kann aufräumen |
| SIGKILL | 9 | Hartes Beenden – sofort, ohne Aufräumen |
| SIGINT | 2 | Interrupt – entspricht Ctrl+C |
| SIGSTOP | 19 | Prozess anhalten (pause) |
| SIGCONT | 18 | Prozess fortsetzen (nach SIGSTOP) |
| SIGHUP | 1 | Neuladen der Konfiguration (z.B. bei Webservern) |
kill -9 beendet einen Prozess sofort, ohne ihm Zeit zum Aufräumen zu geben. Daten können verloren gehen. Verwenden Sie zuerst SIGTERM (ohne Option) und nur bei hartnäckigen Prozessen kill -9.
journalctl ist das Logging-Tool von systemd – es zeigt Log-Nachrichten von Diensten und dem Systemkern an. Die moderne Alternative zu /var/log/.
| Option | Beschreibung |
|---|---|
| -u <dienst> | Logs eines bestimmten Dienstes anzeigen |
| -f | Logs live verfolgen (tail -f) |
| -n 100 | Letzte 100 Zeilen anzeigen |
| --since "2026-06-21 10:00:00" | Logs seit einem bestimmten Zeitpunkt |
| --until "2026-06-21 12:00:00" | Logs bis zu einem bestimmten Zeitpunkt |
| -p err | Nur Fehler (emerg, alert, crit, err) |
| --since "1 hour ago" | Logs der letzten Stunde |
| -k | Kernel-Logs anzeigen (dmesg-Ersatz) |
journalctl -u nginx:journalctl -u dienst -f ist die moderne Alternative zu tail -f /var/log/dienst.log – perfekt für die Echtzeit-Überwachung von Diensten.
systemctl
service
ps
top / htop
kill
journalctl