Eine der wichtigsten Voraussetzungen für eine Systemadministrator zu wissen, wie man den Dienst beim Booten konfiguriert, so dass er bei einem Neustart des Servers automatisch starten.
Für den Neustart des Servers kann es verschiedene Gründe geben, darunter die folgenden.
- Geplant für wöchentlich, monatlich
- Unerwartetes aufgrund eines Hardware/Kernel-Problems
Wenn Sie die richtige Konfiguration vornehmen, müssen Sie sie nicht bei jedem Neustart manuell starten.
Ein kleines bisschen Automatisierung. Nicht wahr?
Die folgenden Beispiele sind für zwei beliebte Distros, die auf DigitalOcean Server.
CentOS oder RHEL 6.x
Im folgenden Beispiel habe ich mich für einen Apache-HTTP-Server entschieden, aber das Verfahren ist für alle anderen Dienste, die Sie beim Booten von Red Hat Enterprise Linux (RHEL) oder CentOS 6 starten möchten, gleich.
Sie können jeden beliebigen Skriptdateinamen beibehalten, und hier habe ich den Namen httpd
- Werden Sie root-Benutzer auf Ihrem Linux-Server
- Erstellen oder kopieren Sie Ihr Skript unter /etc/init.d/
[root@Chandan init.d]# ls -ltr httpd
-rwxr-xr-x. 1 root root 3371 Jan 6 08:56 httpd
[root@Chandan init.d]#
Wir werden die chkconfig
das standardmäßig unter Linux oder CentOS verfügbar ist.
- Skript zum Starten beim Booten hinzufügen mit
chkconfig
mit--add
Parameter
[root@Chandan init.d]# chkconfig --add httpd
[root@Chandan init.d]# chkconfig httpd on
- Bestätigen Sie, dass das Skript erfolgreich hinzugefügt wurde mit
--list
[root@Chandan init.d]# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@Chandan init.d]#
Das ist alles! httpd
Skript wird aufgerufen, um Dienste beim Booten von Linux zu starten.
Falls Sie Folgendes benötigen deaktivieren Sie die Autostart-Dienst zu aktivieren, können Sie die folgenden Befehle verwenden
chkconfig httpd off
chkconfig --del httpd
RHEL oder CentOS 7.x/8.x
Das Verfahren zur Konfiguration von Diensten beim Booten in RHEL 7 unterscheidet sich geringfügig von RHEL 6. Es verwendet systemd um die Dienste zu verwalten.
Die meiste Software wie Apache, PHP, MySQL, Nginx-Skripte werden in Dienstleistungen wenn Sie es installieren.
Nehmen wir ein Beispiel für PHP-FPM.
Als erstes sollten wir uns den Status von php-fpm ansehen (dies setzt voraus, dass Sie bereits Skripte in /usr/lib/systemd/system/
)
[root@instance-1 ~]# systemctl status php-fpm
php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
Active: inactive (dead)
[root@instance-1 ~]#
Wie Sie sehen können, ist der Status deaktiviert was bedeutet, dass er nicht so konfiguriert ist, dass er beim Booten startet.
Aktivieren wir php-fpm, um beim Booten zu starten, indem wir systemctl
[root@instance-1 ~]# systemctl enable php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.
[root@instance-1 ~]#
Sehen wir uns den Status an
[root@instance-1 ~]# systemctl status php-fpmphp
php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; vendor preset: disabled) Active: inactive (dead)
[root@instance-1 ~]#
php-fpm ist so eingestellt, dass es beim Booten startet. Testen wir es, indem wir den Server neu booten.
Wenn Sie den Start von Diensten beim Booten deaktivieren möchten, können Sie den folgenden Befehl verwenden
systemctl disable php-fpm
Vielleicht möchten Sie auch diesen Beitrag lesen, der erklärt systemd und das automatische Starten von Diensten beim Booten.
Ubuntu
Die Konfiguration von Autostart-Diensten in Ubuntu ist etwas anders. Nehmen wir an, der Name des Skripts ist Nginx
- Anmeldung am Ubuntu-Server mit root
- Kopieren Sie das Skript in den Ordner /etc/init.d/
- Führen Sie den folgenden Befehl aus
update-rc.d nginx defaults
- Starten Sie den Server neu, um sicherzustellen, dass die Dienste gestartet sind.
Das hat mir geholfen, und ich glaube, dass es auch für Sie von Nutzen sein wird.
Systemadministration macht immer Spaß und ist eine Herausforderung, und wenn Sie sich für Ihre Karriere in Schwung bringen in ihr, dann können Sie sich auf diese Udemy-Kurs.
Als nächstes erfahren Sie, wie Sie Linux Grund für plötzlichen Neustart finden.
Kopf hier möchten Sie PHP-FPM 5.6 auf CentOS 6.x installieren/aktualisieren.