systemctl / systemd richtig verwenden

Heute will ich mal etwas auf systemctl und systemd eingehen =)

Allgemein

systemd ist ein Init-System und System-Manager. Es handelt sich dabei um den neuen Standard für Linux Maschinen.

Starten und Stoppen von Servicen

Um eine systemd Dienst zu starten, werden die Befehle  der Unit-Datei des Dienstes verwenden. Um diesen Befehl auszuführen ist es wichtig auf dem System root zu sein. Der Befehl für das starten eines Dienstes könnte dann so aussehen.

Alternativ kann man dazu auch eine Kurzschreibweise verwenden.

Der Befehl zum Stoppen desDienstes ist fast identisch. Wir tauschen nur start durch stop.

Restart und Reloading

Zum Neustarten eines Dienstes kann der restart Befehl verwendet werden.

Wenn der Dienst in der Lage ist, seine Konfigurationsdateien neu zu laden ohne den eigentlichen Dienst neuzustarten, kann der reload Befehl verwendet werden.

Wenn man sich unsicher ist, ob der Dienst das neu laden der Konfigurationsdateien unterstützt kann man den folgenden Befehl verwenden.

Hier wird erst versucht die Konfiguration neu zu laden. Sollte dies nicht möglich sein, wird der ganze Dienst neugestartet.

Enabling und Disabling von Services

Die obigen Befehle sind nützlich zum Starten oder Stoppen während der aktuellen Sitzung. Um systemd Dienste automatisch beim Booten zu starten, muss dies extra aktiviert werden. Dafür können wir den folgenden Befehl zur Hand nehmen:

Dieser Befehl legt einen symbolischen Link zur Service-Datei an. In der Regel wird dieser Link in /lib/systemd/system or /etc/systemd/system angelegt.

Wollen wir den Service nun nicht mehr beim Booten starten lassen, kann dies mit dem folgenden Befehl wieder deaktiviert werden.

Status eines Services

Mit dem folgenden Befehl, kann der Status eines Services geprüft werden.

Als Beispiel lassen wir uns mal den Status des httpd anzeigen.

Die Ausgabe gibt uns einen Überblick über den aktuellen Status des httpd. Hier würde wir auch sehen, wenn es Probleme mit dem httpd gibt. Als Beispiel kommentiere ich die letzten paar Zeilen einer vHost Datei aus und starte httpd neu. Nachdem der Neustart fehlgeschlagen ist, lasse ich mir wieder den Status des httpd anzeigen.

Wir werden nun auf den Fehler in der entsprechenden Datei hingewiesen und können diesen ausbessern.
Damit haben wir erstmal die Grundlagen für systemclt / systemd durch.

About Christian Piazzi

Ich blogge hier über alles, was mir so in meinem ITler Altag über den Weg läuft =)
Man findet mich privat bei Google+ und Twitter

Speak Your Mind

*