Das Neustarten eines Dienstes ist eine der administrativen Aufgaben, die Sie das eine oder andere Mal ausführen müssen, während Sie Software auf Ihrem Ubuntu konfigurieren. In diesem Artikel erklären wir, wie Sie einen laufenden Dienst auf Ihrem Ubuntu über den Befehl systemctl neu starten. Wir werden auch einige weitere Systemctl-Befehle für die Dienstverwaltung erklären, die Ihnen bei der Arbeit mit Diensten weiterhelfen werden.
Wir haben die in diesem Artikel erwähnten Befehle und Verfahren auf einem Ubuntu 18.04 LTS-System ausgeführt.
Neustart eines Dienstes mit Systemctl
In diesem Artikel verwenden wir die Ubuntu-Befehlszeile, das Terminal, um zu erklären, wie ein laufender Dienst neu gestartet wird.
Sie können die Terminal-Anwendung auf Ihrem Ubuntu entweder über die Suchleiste des Anwendungsstarters oder einfach über Strg+Alt+T öffnen Verknüpfung.
Die neuesten Versionen von Ubuntu verwenden systemd, um Dienste zu steuern und zu starten. Führen Sie diesen Befehl aus, um eine Liste aller aktivierten systemd-Einheiten zu erhalten:
systemctl list-unit-files | grep enabled
Die Liste hilft Ihnen beim Abrufen des genauen Dienstnamens, den Sie später verwenden können, um den Dienst neu zu starten.
Sie können den Befehl systemctl verwenden, um einen Dienst neu zu starten. Dieser Befehl ist ein relativ neues Tool, mit dem Sie systemd (Init-System) und Dienste steuern können. Dieses Tool ersetzt den sysV-Init-Manager. Heutzutage sind die meisten modernen Linux-Distributionen auf systemd und damit auf systemctl umgestiegen.
So können Sie den Befehl systemctl verwenden, um einen laufenden Dienst neu zu starten:
$ sudo systemctl restart [Dienstname]
Beispielsweise kann der folgende Befehl verwendet werden, um den UFW-Dienst (Uncomplicated Firewall) auf Ubuntu neu zu starten:
$ sudo systemctl restart ufw
Bitte beachten Sie, dass Sie ein autorisierter Benutzer sein müssen, um Systemdienste zu verwalten.
Dienste mit Systemd verwalten
Mit systemctl können Sie nicht nur Dienste neu starten, sondern auch:
- Überprüfen Sie den Status eines Dienstes
$ systemctl status [Dienstname]
- Starten Sie einen Dienst
$ systemctl start [Dienstname]
- Dienst stoppen
$ systemctl stop [Dienstname]
- Einen Dienst neu laden (Dienstkonfiguration neu laden)
$ systemctl reload [Dienstname]
- Einen Dienst neu laden oder neu starten (einen Dienst neu laden/neu starten, wenn ein Neuladen nicht verfügbar ist)
$ sudo systemctl reload-or-restart [Dienstname]
- Dienst aktivieren
$ systemctl enable [Dienstname]
- Dienst deaktivieren
$ systemctl deaktiviert [Dienstname]
- Prüfen Sie, ob der Dienst aktiviert/aktiv ist
$ sudo systemctl is-active [Dienstname]
$ sudo systemctl ist aktiviert [Dienstname]
Mit diesem einfachen, aber nützlichen Tool können Sie einen Dienst neu starten, ohne Ihr gesamtes System neu starten zu müssen. Darüber hinaus können Sie mithilfe der in diesem Artikel beschriebenen Befehlsverwendung mehr Dienstverwaltung durchführen.