GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Basisdienstbefehle

Dieser Artikel beschreibt, wie Sie Dienste mithilfe von systemd verwalten .

Einführung

Viele moderne Linux®-Betriebssysteme, die bei Rackspace erhältlich sind, wie Centos® 7 und höher und Ubuntu® 16.04, haben systemd übernommen als Systemmanager. Vielleicht möchten Sie wissen, wie Sie damit Ihre Anwendungen verwalten können.

Verwenden Sie systemctl

Wenn Sie systemd verwenden Um Anwendungen zu verwalten, verwenden Sie den Befehl systemctl . Die folgenden Abschnitte beschreiben mehrere Funktionen dieses Befehls.

Dienste starten und stoppen

Verwenden Sie den Befehl systemctl start application.service um die Anwendung zu starten und den Befehl systemctl stop application.service um die Anwendung zu stoppen. Wenn Sie nicht wissen, ob ein Dienst ausgeführt wird, können Sie den Befehl systemctl status application.service verwenden um den Status zu überprüfen, wie im folgenden Beispiel gezeigt:

[root@localhost ~]# systemctl status httpd.service
   httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: man:httpd(8)
       man:apachectl(8)
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# systemctl status httpd.service
  httpd.service - The Apache HTTP Server
  Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
  Active: active (running) since Sun 2020-05-24 01:30:02 UTC; 1s ago
    Docs: man:httpd(8)
       man:apachectl(8)
 Main PID: 16117 (httpd)
 Status: "Processing requests..."
 CGroup: /system.slice/httpd.service
       ├─16117 /usr/sbin/httpd -DFOREGROUND
       ├─16118 /usr/sbin/httpd -DFOREGROUND
       ├─16119 /usr/sbin/httpd -DFOREGROUND
       ├─16120 /usr/sbin/httpd -DFOREGROUND
       ├─16121 /usr/sbin/httpd -DFOREGROUND
       └─16122 /usr/sbin/httpd -DFOREGROUND

May 24 01:30:02 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
May 24 01:30:02 localhost.localdomain httpd[16117]: AH00558: httpd: Could not reliably determine
the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' 
directive globally to suppress this message
May 24 01:30:02 localhost.localdomain systemd[1]: Started The Apache HTTP Server.
[root@localhost ~]#

Dienste neu starten oder neu laden

Das Neustarten und Neuladen eines Dienstes sind zwei verschiedene Dinge mit systemd .

Wenn Sie den Befehl systemctl restart application.service ausführen , wird der angegebene Dienst neu gestartet. Wenn sich der Dienst in einem angehaltenen Zustand befindet, wird er gestartet.

Wenn Sie den Befehl systemctl reload application.service ausführen , die Konfiguration der angegebenen Servicereloads. Wenn Sie beispielsweise Änderungen an einem virtuellen Apache®-Host (vhost) vornehmen und möchten, dass diese Änderungen live gehen, ohne Apache anzuhalten, laden Sie den Dienst neu. Die neuen Konfigurationen erfolgen ohne Unterbrechung des Dienstes.

Dienste aktivieren und deaktivieren

Wenn Sie möchten, dass ein bestimmter Dienst beim Hochfahren des Servers gestartet wird, führen Sie den Befehl systemctl enable application.service aus . Wenn Sie sicherstellen möchten, dass ein Dienst nicht gestartet wird, wenn der Server hochfährt, führen Sie den Befehl systemctl disable application.service aus .


Linux
  1. Systemctl ersetzt Chkconfig- und Service-Befehle in CentOS 7

  2. Verwenden Sie Systemctl, um Dienste zu verwalten

  3. systemctl status zeigt inactive dead

  4. Wie finde ich heraus, warum der systemctl-Dienst systemd-modules-load fehlschlägt?

  5. systemctl stoppt den Tomcat-Dienst sofort nach dem Start

Auflisten von Linux-Diensten mit Systemctl

So verwalten Sie Systemd-Dienste mit Systemctl unter Linux

Systemctl-Befehle zum Verwalten des Systemd-Dienstes

Erste Schritte mit systemctl

So verwenden Sie systemctl unter Linux

Timeout für Systemctl-Befehle bei Ausführung als Root