systemctl list services: So verwaltest du Linux-Systemdienste schnell und sauber
Wenn ich unter Linux wissen will, was wirklich läuft, starte ich nicht mit Rätselraten. Ich gehe direkt mit systemctl list services an die Sache. Hier zeige ich dir, wie du Dienste findest, verstehst, filterst und sauber verwaltest.
systemctl list services: mein schneller Einstieg in die Linux-Dienstverwaltung
Wenn ich auf einem Linux-System arbeiten, Probleme finden oder Services sauber steuern will, ist der erste Blick fast immer auf die laufenden Dienste. Genau dafür nutze ich systemctl list services. Der Befehl zeigt mir, welche Systemdienste existieren, welche aktiv sind und wo gerade etwas hakt.
Das ist kein Luxus. Das ist Basisarbeit. Wer Linux ernsthaft nutzt, muss wissen, wie Dienste unter systemd funktionieren. Sonst tappst du bei Fehlern im Dunkeln.
systemctl list services: was der Befehl wirklich macht
Technisch gibt es in systemd nicht immer exakt einen einzigen Standardbefehl namens „list services“ in jeder Form, wie man ihn umgangssprachlich meint. In der Praxis arbeite ich meist mit:
systemctl list-units --type=servicesystemctl list-unit-files --type=service
Der Unterschied ist wichtig:
- list-units zeigt dir aktuell geladene bzw. aktive Units.
- list-unit-files zeigt dir installierte Service-Dateien und ihren Enable-Status.
Wenn ich wissen will, was jetzt gerade läuft, nehme ich list-units. Wenn ich wissen will, was beim Booten starten kann, nehme ich list-unit-files.
systemctl list services: die wichtigsten Befehle
Hier sind die Commands, die ich wirklich nutze:
systemctl list-units --type=service
systemctl list-units --type=service --state=running
systemctl list-unit-files --type=service
systemctl status nginx
Die ersten drei geben dir den Überblick. Der letzte ist mein Go-to, wenn ich einen konkreten Dienst prüfen will.
systemctl list services: aktive, inaktive und fehlerhafte Dienste erkennen
Ein Dienst ist nicht einfach nur „da“ oder „weg“. Unter systemd gibt es mehrere Zustände. Das ist wichtig, wenn du Probleme sauber eingrenzen willst.
- active: läuft gerade.
- inactive: läuft nicht.
- failed: ist mit Fehler beendet worden.
- enabled: startet automatisch beim Booten.
- disabled: startet nicht automatisch.
Wenn ich einen Server prüfe, suche ich fast immer zuerst nach failed-Einträgen. Das ist der schnellste Weg, echte Probleme zu finden.
systemctl list services: Dienste filtern wie ein Profi
Ein langer Diensteliste ist nutzlos, wenn du nicht filtern kannst. Deshalb arbeite ich mit klaren Filtern.
systemctl list-units --type=service --state=failed
Das zeigt mir nur fehlerhafte Dienste. Genau das will ich in 90 Prozent der Fälle sehen.
systemctl list-units --type=service --state=running
So sehe ich nur aktive Services.
systemctl list-unit-files --type=service | grep enabled
Damit erkenne ich schnell, was beim Start automatisch geladen wird.
Mein Prinzip: nicht mehr Daten anzeigen als nötig. Je weniger Lärm, desto schneller die Lösung.
systemctl list services: Service-Status richtig lesen
Die Ausgabe von systemctl wirkt anfangs trocken, ist aber logisch. Typische Spalten sind:
- UNIT: Name des Dienstes
- LOAD: ob die Unit-Datei geladen wurde
- ACTIVE: aktueller Zustand
- SUB: Unterstatus, zum Beispiel running oder exited
- DESCRIPTION: kurze Beschreibung
Wenn ich einen Eintrag wie active (running) sehe, ist alles gut. Wenn dort failed steht, schaue ich sofort mit systemctl status name und danach mit journalctl -u name weiter.
systemctl list services: typische Fehler und was sie bedeuten
Ich sehe immer wieder dieselben Probleme. Das sind die Klassiker:
- Ein Dienst fehlt in der Liste: Er ist vielleicht nicht installiert oder die Unit-Datei existiert nicht.
- Der Dienst ist inactive: Er läuft gerade nicht, kann aber trotzdem installiert sein.
- Der Dienst ist failed: Beim Start ist etwas schiefgelaufen. Hier musst du ins Log.
- enabled, aber nicht running: Der Dienst startet beim Booten, läuft aber gerade nicht. Das ist nicht automatisch ein Fehler.
Wichtig: enabled bedeutet nicht running. Das verwechseln viele. Ich trenne diese beiden Zustände immer sauber.
systemctl list services: Dienste starten, stoppen und neu laden
Wenn ich einen Dienst gefunden habe, will ich ihn oft direkt steuern. Dafür nutze ich diese Befehle:
sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx
sudo systemctl reload nginx
sudo systemctl enable nginx
sudo systemctl disable nginx
restart stoppt und startet den Dienst neu. reload lädt Konfigurationen neu, ohne den Prozess komplett zu beenden. Wenn ein Dienst das unterstützt, ist reload oft sauberer.
systemctl list services: so prüfe ich Fehler schnell
Wenn ein Service nicht läuft, gehe ich immer in derselben Reihenfolge vor:
- 1. Status prüfen:
systemctl status name - 2. Logs ansehen:
journalctl -u name - 3. Konfiguration testen: abhängig vom Dienst, zum Beispiel mit
nginx -t - 4. Dienst neu starten: erst nach Fixing
Das spart Zeit. Ich rate nicht. Ich prüfe.
systemctl list services: praktische Beispiele für den Alltag
Hier sind typische Anwendungsfälle:
- Webserver prüfen:
systemctl status apache2odersystemctl status nginx - Datenbank überwachen:
systemctl status mysqlodersystemctl status postgresql - Alle Fehlerdienste finden:
systemctl list-units --type=service --state=failed - Autostart prüfen:
systemctl list-unit-files --type=service
Wenn ich einen Server übernehme, ist das oft mein erstes Prüfset. Schnell, direkt, nützlich.
systemctl list services: nützliche Ressourcen
Wenn du tiefer einsteigen willst, nutze die offiziellen Quellen. Die sind zuverlässig und aktuell:
systemctl list services: mein Fazit
Wenn du Linux-Dienste schnell verstehen und kontrollieren willst, brauchst du keine Magie. Du brauchst die richtigen Befehle, saubere Filter und einen klaren Ablauf. Genau deshalb ist systemctl list services so stark: Es gibt dir Überblick ohne Umwege. Und wer Überblick hat, löst Probleme schneller.
Ich nutze systemctl list services, um Systeme zu prüfen, Fehler zu finden und Dienste ohne Chaos zu verwalten. Genau so sollte Linux-Administration laufen.