Hvordan starte tjenester automatisk ved oppstart i Linux?

En av de viktigste for en systemadministrator å vite er hvordan man konfigurerer tjenesten ved oppstart, så når en server får en omstart, starter de automatisk.

Det kan være ulike årsaker til omstart av serveren, inkludert følgende.

  • Planlagt for ukentlig, månedlig
  • Uventet på grunn av maskinvare/kjerneproblem

Ved å gjøre riktig konfigurasjon trenger du ikke å starte dem manuelt hver gang du starter på nytt.

Litt automatisering. Ikke sant?

Følgende eksempler er for to populære distroer testet på DigitalOcean servere.

CentOS eller RHEL 6.x

I følgende eksempel har jeg tatt en Apache HTTP-server, men prosedyren forblir den samme for alle andre tjenester du ønsker å starte ved oppstart i Red Hat Enterprise Linux (RHEL) eller CentOS 6 versjon.

Du kan beholde hvilket som helst skriptfilnavn, og her har jeg beholdt httpd

  • Bli en root-bruker på din Linux-server
  • Lag eller kopier skriptet ditt under /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]#

Vi vil bruke chkconfig-verktøyet som er tilgjengelig som standard på Linux eller CentOS.

  • Legg til skript for å starte ved oppstart ved å bruke chkconfig med –add parameter
[[email protected] init.d]# chkconfig --add httpd
[[email protected] init.d]# chkconfig httpd on
  • Bekreft at skriptet er lagt til med –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]#

Det er alt! httpd-skriptet vil bli kalt for å starte tjenester ved Linux-oppstart.

  Hvordan installere Sublime Merge på Linux

I tilfelle du trenger å deaktivere autostart-tjenesten, kan du bruke følgende kommandoer

chkconfig httpd off
chkconfig --del httpd

RHEL eller CentOS 7.x/8.x

Prosedyren for å konfigurere tjenester ved oppstart i RHEL 7 er litt annerledes enn RHEL 6. Den bruker systemd for å administrere tjenestene.

Mesteparten av programvaren som Apache, PHP, MySQL, Nginx-skript legges til i tjenester når du installerer den.

La oss ta et eksempel på PHP-FPM.

Først, la oss se statusen til php-fpm (dette antar at du allerede har skript i /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] ~]#

Som du kan se er statusen deaktivert, noe som betyr at den ikke er konfigurert til å starte ved oppstart.

  Hvordan oppgradere til Linux Mint 20.2

La oss aktivere php-fpm for å starte ved oppstart ved å bruke 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] ~]#

La oss nå se statusen

[[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 er klar til å starte ved oppstart. La oss teste det ved å starte serveren på nytt.

Hvis du noen gang trenger å deaktivere starttjenester ved oppstart, kan du bruke kommandoen nedenfor

systemctl disable php-fpm

Du foretrekker kanskje også å sjekke ut dette innlegget som forklarer systemd og automatisk starttjenester ved oppstart.

  Hvordan spille spill med Itch.io på Linux

Ubuntu

Konfigurering av autostart-tjenester i Ubuntu er litt annerledes. La oss si at skriptnavnet er Nginx

  • Logg på Ubuntu server med root
  • Kopier skriptet i mappen /etc/init.d/
  • Utfør kommandoen nedenfor
update-rc.d nginx defaults
  • Start serveren på nytt for å sikre at tjenestene startes.

Dette har hjulpet meg, og jeg tror det vil være nyttig for deg også.

Systemadministrasjon er alltid morsomt og utfordrende, og hvis du ønsker å forsterke karrieren din i det, kan du referere til dette Udemy kurs.

Deretter kan du sjekke hvordan du finner årsaken til plutselig omstart av Linux.
Gå hit du vil installere/oppgradere PHP-FPM 5.6 på CentOS 6.x.

Likte du å lese artikkelen? Hva med å dele med verden?