Jak automatycznie uruchamiać usługi przy rozruchu w systemie Linux?

Jedną z podstawowych informacji dla administratora systemu jest to, jak skonfigurować usługę podczas rozruchu, więc po ponownym uruchomieniu serwera uruchamiają się one automatycznie.

Przyczyny ponownego uruchomienia serwera mogą być różne, w tym następujące.

  • Planowane na tydzień, miesiąc
  • Nieoczekiwane z powodu problemu ze sprzętem/jądrem

Wykonując odpowiednią konfigurację, nie musisz uruchamiać ich ręcznie przy każdym ponownym uruchomieniu.

Trochę automatyzacji. Prawda?

Poniższe przykłady dotyczą dwóch popularnych dystrybucji testowanych na Cyfrowy Ocean serwery.

CentOS lub RHEL 6.x

W poniższym przykładzie wziąłem serwer Apache HTTP, ale procedura pozostaje taka sama dla wszystkich innych usług, które chcesz uruchomić przy rozruchu w wersji Red Hat Enterprise Linux (RHEL) lub CentOS 6.

Możesz zachować dowolną nazwę pliku skryptu, a tutaj zachowałem httpd

  • Zostań użytkownikiem root na swoim serwerze Linux
  • Utwórz lub skopiuj swój skrypt do /etc/init.d/
[[email protected] init.d]# ls -ltr httpd
-rwxr-xr-x. 1 root root 3371 Jan 6 08:56 httpd
[[email protected] init.d]#

Użyjemy narzędzia chkconfig, które jest dostępne domyślnie w systemie Linux lub CentOS.

  • Dodaj skrypt, aby uruchomić się przy starcie za pomocą chkconfig z opcją –dodaj parametr
[[email protected] init.d]# chkconfig --add httpd
[[email protected] init.d]# chkconfig httpd on
  • Potwierdź, że skrypt został pomyślnie dodany za pomocą –list
[[email protected] init.d]# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[[email protected] init.d]#

To wszystko! Skrypt httpd zostanie wywołany w celu uruchomienia usług podczas startu systemu Linux.

Jeśli chcesz wyłączyć usługę automatycznego uruchamiania, możesz użyć następujących poleceń

chkconfig httpd off
chkconfig --del httpd

RHEL lub CentOS 7.x/8.x

Procedura konfigurowania usług podczas rozruchu w RHEL 7 jest nieco inna niż w RHEL 6. Do zarządzania usługami jest używany systemd.

Większość oprogramowania, takiego jak skrypty Apache, PHP, MySQL, Nginx, jest dodawana do usług podczas instalacji.

Weźmy przykład PHP-FPM.

Najpierw zobaczmy status php-fpm (załóżmy, że masz już skrypty w /usr/lib/systemd/system/)

[[email protected] ~]# 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) 
[[email protected] ~]#

Jak widać, status jest wyłączony, co oznacza, że ​​nie jest skonfigurowany do uruchamiania przy starcie.

Włączmy uruchamianie php-fpm przy starcie za pomocą systemctl

[[email protected] ~]# 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.
[[email protected] ~]#

Zobaczmy teraz status

[[email protected] ~]# 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) 
[[email protected] ~]#

php-fpm jest ustawione na start przy starcie. Przetestujmy to ponownie uruchamiając serwer.

Jeśli kiedykolwiek będziesz musiał wyłączyć uruchamianie usług podczas rozruchu, możesz użyć poniższego polecenia

systemctl disable php-fpm

Możesz również chcieć zapoznać się z tym postem wyjaśniającym usługi systemd i automatycznego uruchamiania podczas uruchamiania.

Ubuntu

Konfiguracja usług automatycznego uruchamiania w Ubuntu jest nieco inna. Powiedzmy, że nazwa skryptu to Nginx

  • Zaloguj się do serwera Ubuntu z rootem
  • Skopiuj skrypt do folderu /etc/init.d/
  • Wykonaj poniższe polecenie
update-rc.d nginx defaults
  • Uruchom ponownie serwer, aby upewnić się, że usługi są uruchomione.

Pomogło mi to i wierzę, że przyniesie to również korzyści.

Administracja systemem jest zawsze zabawna i wymagająca, a jeśli chcesz przyspieszyć swoją karierę w tym zakresie, możesz się do tego odwołać Kurs Udemy.

Następnie sprawdź, jak znaleźć przyczynę nagłego ponownego uruchomienia Linuksa.
Udaj się tutaj, aby zainstalować / zaktualizować PHP-FPM 5.6 na CentOS 6.x.

Podobał Ci się artykuł? Co powiesz na dzielenie się ze światem?