Einführung
Linux bietet über systemd mithilfe von systemctl eine feinkörnige Kontrolle über Systemdienste Befehl . Dienste können beim Booten aktiviert, deaktiviert, neu gestartet, neu geladen oder sogar aktiviert oder deaktiviert werden. Wenn Sie Debian 7, CentOS 7 oder Ubuntu 15.04 (oder höher) ausführen, verwendet Ihr System wahrscheinlich systemd.
Diese Anleitung zeigt Ihnen, wie Sie grundlegende Befehle verwenden, um Dienste unter Linux zu starten, zu stoppen und neu zu starten.
Voraussetzungen
- Zugriff auf ein Benutzerkonto mit sudo oder root Privilegien
- Zugriff auf ein Terminal/eine Befehlszeile
- Die systemctl Tool, in Linux enthalten
Grundlegende Syntax des systemctl-Befehls
Die grundlegende Syntax für die Verwendung von systemctl Befehl ist:
systemctl [command] [service_name]
Normalerweise müssen Sie dies als Superuser ausführen, wobei jeder Befehl mit sudo
beginnt .
So überprüfen Sie, ob ein Dienst unter Linux ausgeführt wird
Führen Sie diesen Befehl aus, um zu überprüfen, ob ein Dienst aktiv ist oder nicht:
sudo systemctl status apache2
Ersetzen Sie apache2 mit dem gewünschten Service. In unserem Fall haben wir den Status von Apache überprüft. Die Ausgabe zeigt, dass der Dienst aktiv (wird ausgeführt) ist , wie im Bild unten:
So starten Sie einen Dienst neu
Zum Beenden und Neustarten des Dienstes unter Linux , verwenden Sie den Befehl:
sudo systemctl restart SERVICE_NAME
Danach sollte Ihr Dienst wieder betriebsbereit sein. Sie können den Status mit dem status
überprüfen Befehl.
Um den Apache-Server neu zu starten, verwenden Sie:
sudo systemctl restart apache2
So laden Sie einen Dienst neu
Um den Dienst zu zwingen, seine Konfigurationsdateien neu zu laden, geben Sie im Terminal den folgenden Befehl ein:
sudo systemctl reload SERVICE_NAME
Nach dem Neuladen wird der Dienst betriebsbereit sein. Überprüfen Sie seinen Status mit dem status
Befehl zum Bestätigen.
In unserem Beispiel haben wir Apache neu geladen mit:
sudo systemctl reload apache2
So starten Sie einen Dienst
Um einen Dienst unter Linux zu starten Geben Sie manuell Folgendes in das Terminal ein:
sudo systemctl start SERVICE_NAME
Der Befehl zum Starten des Apache-Dienstes lautet beispielsweise:
sudo systemctl start apache2
So beenden Sie einen Dienst
Um einen aktiven Dienst unter Linux zu stoppen, verwenden Sie den folgenden Befehl:
sudo systemctl stop SERVICE_NAME
Wenn der Dienst, den Sie stoppen möchten, Apache ist, lautet der Befehl:
sudo systemctl stop apache2
Überprüfen Sie mit status
, ob der Dienst nicht mehr ausgeführt wird Befehl. Die Ausgabe sollte zeigen, dass der Dienst inaktiv (tot) ist .
So aktivieren Sie den Dienst beim Booten
Verwenden Sie den folgenden Befehl, um einen Dienst so zu konfigurieren, dass er beim Systemstart gestartet wird:
sudo systemctl enable SERVICE_NAME
Führen Sie den folgenden Befehl aus, um Apache beim Booten des Systems zu aktivieren:
sudo systemctl enable apache2
So deaktivieren Sie den Dienst beim Booten
Mit dem folgenden Befehl können Sie verhindern, dass der Dienst beim Booten gestartet wird:
sudo systemctl disable SERVICE_NAME
Zum Beispiel:
sudo systemctl disable apache2
Variationen in Dienstnamen
Wenn Sie in derselben Linux-Umgebung arbeiten, lernen Sie die Namen der Dienste kennen, die Sie häufig verwenden.
Wenn Sie beispielsweise eine Website erstellen, werden Sie höchstwahrscheinlich systemctl restart apache2
verwenden häufig, wenn Sie Konfigurationsänderungen an Ihrem Server aktualisieren.
Wenn Sie jedoch zwischen verschiedenen Linux-Varianten wechseln, ist es hilfreich zu wissen, dass derselbe Dienst in verschiedenen Distributionen unterschiedliche Namen haben kann.
Beispielsweise heißt der Apache-Dienst in Ubuntu und anderen Debian-basierten Distributionen apache2. In CentOS 7 und anderen RedHat-Distributionen heißt der Apache-Dienst httpd oder httpd.service.