Heim >Betrieb und Instandhaltung >CentOS >Wie verwalte ich Systemdienste mit Systemd in CentOS?
Das Verwalten von Systemdiensten mit Systemd in CentOS umfasst eine Reihe von Befehlen, mit denen Sie den Lebenszyklus von Diensten steuern können, indem Sie sie starten und stoppen, um sie automatisch mit dem Start zu starten. Systemd ist das Standard -Init -System in CentOS 7 und späteren Versionen, wodurch das ältere Sysvinit -System ersetzt wird. So können Sie Dienste mit Systemd verwalten:
systemctl list-units --type=service
. Grundlegende Serviceverwaltung : Verwenden Sie systemctl
, um den Status eines Dienstes zu starten, anzuhalten, neu zu starten oder zu überprüfen. Zum Beispiel:
Aktivieren/deaktivieren Sie Dienste beim BOOT : Sie können die Dienste aktivieren oder deaktivieren, um automatisch am Systemstart zu starten.
sudo systemctl disable service_name
.service
-Erweiterung). Sie können diese Dateien in /etc/systemd/system/
oder /usr/lib/systemd/system/
anzeigen oder bearbeiten.SYSTEMD -Konfiguration neu laden : Nach der Änderung von Dienstdateien müssen Sie systemd neu laden, um Änderungen anzuwenden:
journalctl
überprüfen, um Probleme zu diagnostizieren. Beispielsweise zeigt <code>sudo journalctl -u service_name</code> Protokolle in Bezug auf diesen Dienst an.Durch die Ausführung dieser Schritte können Sie Systemdienste in CentOS effektiv verwalten.
Die grundlegenden System -Befehle zum Starten und Stoppen von Diensten in CentOS sind Teil des systemctl
-Dienstprogramms. Hier sind die Befehle, die Sie üblicherweise verwenden:
Starten Sie einen Dienst : Verwenden Sie den Befehl start
, um einen Dienst zu starten, gefolgt vom Dienstnamen:
<code>sudo systemctl start service_name</code>
Stop einen Dienst : Um einen Dienst zu stoppen, verwenden Sie den stop
-Befehl:
<code>sudo systemctl stop service_name</code>
Starten Sie einen Service neu : Um einen Dienst neu zu starten, der anhält und dann beginnt, verwenden Sie:
<code>sudo systemctl restart service_name</code>
Laden Sie einen Dienst neu : Wenn ein Dienst das Neuladen seiner Konfiguration ohne Neustart unterstützt, können Sie verwenden:
<code>sudo systemctl reload service_name</code>
Service Status überprüfen : Verwenden Sie: Um den aktuellen Status eines Dienstes zu überprüfen, verwenden Sie:
<code>sudo systemctl status service_name</code>
Diese Befehle sind grundlegend für die Verwaltung von Diensten in CentOS mithilfe von SystemD. Sie müssen diese Befehle mit Root -Privilegien ausführen, daher die Verwendung von sudo
.
Damit ein Dienst mithilfe von Systemd in CentOS automatisch mit dem Start starten kann, müssen Sie den Befehl enable
in systemctl
verwenden. So können Sie es tun:
Aktivieren Sie den Dienst : Verwenden Sie den Befehl enable
, um sicherzustellen, dass der Dienst zum Startzeit automatisch startet:
<code>sudo systemctl enable service_name</code>
Dieser Befehl erstellt einen symbolischen Link aus der Servicedatei in /etc/systemd/system/
zum entsprechenden wants
, z /etc/systemd/system/multi-user.target.wants/
Überprüfen Sie, ob der Dienst aktiviert ist : Nachdem Sie den Dienst aktiviert haben, können Sie den Status überprüfen, um sicherzustellen, dass er für den Start des BOOT festgelegt ist:
<code>sudo systemctl is-enabled service_name</code>
Dies sollte "aktiviert" zurückgeben, wenn der Dienst so eingestellt ist, dass er mit dem Start startet.
Starten Sie den Dienst sofort (optional) : Wenn der Dienst sofort starten soll und nicht nur am nächsten Start, können Sie ihn manuell starten:
<code>sudo systemctl start service_name</code>
Neustart, um zu bestätigen : Um zu bestätigen, dass der Dienst automatisch am Boot beginnt, können Sie Ihr System neu starten und den Service -Status danach überprüfen:
<code>sudo reboot</code>
Sobald das System sichern, überprüfen Sie den Dienststatus:
<code>sudo systemctl status service_name</code>
Wenn Sie diese Schritte befolgen, stellen Sie sicher, dass der Dienst aktiviert ist und automatisch beginnt, wenn Ihr CentOS -System startet.
Wenn ein Dienst in CentOS nicht unter Systemd beginnt, können Sie die folgenden Schritte zur Diagnose und Lösung des Problems ausführen:
Überprüfen Sie den Dienststatus : Beginnen Sie mit dem aktuellen Status des Dienstes, um festzustellen, ob sofortige Fehlermeldungen vorliegen:
<code>sudo systemctl status service_name</code>
Dieser Befehl kann erste Hinweise darauf geben, warum der Dienst fehlgeschlagen ist.
Serviceprotokolle anzeigen : Verwenden Sie journalctl
um die Protokolle für den spezifischen Dienst zu überprüfen. Dies kann detaillierte Informationen darüber liefern, was möglicherweise schief gelaufen ist:
<code>sudo journalctl -u service_name</code>
Sie können die Ausgabe auch auf die neuesten Protokolle einschränken, indem Sie die Option -n
hinzufügen:
<code>sudo journalctl -u service_name -n 50</code>
Überprüfen Sie die Konfigurationsprobleme : Stellen Sie sicher, dass die Konfigurationsdatei des Dienstes korrekt ist. Konfigurationsdateien befinden sich in der Regel in /etc/systemd/system/
oder /usr/lib/systemd/system/
. Sie können sie mit Ihrem bevorzugten Texteditor bearbeiten:
<code>sudo nano /etc/systemd/system/service_name.service</code>
Vergessen Sie nicht, Systemd neu zu laden, um die Änderungen anzuwenden:
<code>sudo systemctl daemon-reload</code>
systemctl list-dependencies service_name
um festzustellen, worauf der Dienst abhängt, und stellen Sie sicher, dass alle Abhängigkeiten korrekt ausgeführt werden.Versuchen Sie manuell zu starten : Versuchen Sie, den Service manuell zu starten, um zu sehen, ob Sie zusätzliche Fehlermeldungen erhalten:
<code>sudo systemctl start service_name</code>
free -h
für Speicher und df -h
damit der Speicherplatz überprüft wird.Wenn Sie diese Schritte systematisch befolgen, sollten Sie in der Lage sein, Probleme mit Diensten zu diagnostizieren und zu beheben, die nicht unter Systemd auf CentOS beginnen.
Das obige ist der detaillierte Inhalt vonWie verwalte ich Systemdienste mit Systemd in CentOS?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!