Како аутоматски покренути услуге при покретању у Линуку?

Jedna od ključnih veština koju svaki administrator sistema treba da poseduje jeste konfiguracija servisa da se automatski pokreću prilikom podizanja sistema. Na taj način, nakon svakog restartovanja servera, neophodne usluge će se automatski aktivirati.

Postoji više razloga zašto bi server mogao da se restartuje, uključujući:

  • Planirana redovna ponovna pokretanja (nedeljna ili mesečna).
  • Neplanirana ponovna pokretanja usled problema sa hardverom ili jezgrom (kernelom).

Ako pravilno konfigurišete servise, izbeći ćete potrebu za njihovim ručnim pokretanjem nakon svakog ponovnog startovanja sistema.

Malo automatizacije nikad nije na odmet, zar ne?

U narednim primerima, demonstriraćemo postupak konfigurisanja na dve popularne Linux distribucije koje se često koriste na DigitalOcean serverima.

CentOS ili RHEL 6.x

U ovom primeru, koristimo Apache HTTP server, ali proces je isti za sve ostale servise koje želite da se automatski pokreću na Red Hat Enterprise Linux (RHEL) ili CentOS 6 sistemima.

Možete koristiti bilo koje ime za skriptu, ali ovde ćemo koristiti „httpd“.

  • Prijavite se na vaš Linux server kao root korisnik.
  • Napravite ili kopirajte skriptu u direktorijum /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]#

Koristićemo program chkconfig, koji je standardno dostupan na Linux/CentOS sistemima.

  • Dodajte skriptu za pokretanje prilikom startovanja sistema pomoću komande chkconfig sa opcijom –add.
[[email protected] init.d]# chkconfig --add httpd
[[email protected] init.d]# chkconfig httpd on
  • Proverite da li je skripta uspešno dodata koristeći opciju –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 je sve! Skripta „httpd“ će sada biti pozvana da pokrene servis prilikom podizanja Linux sistema.

U slučaju da želite da onemogućite automatsko pokretanje servisa, koristite sledeće komande:

chkconfig httpd off
chkconfig --del httpd

RHEL ili CentOS 7.x/8.x

Postupak konfigurisanja servisa za automatsko pokretanje na RHEL 7 je malo drugačiji u odnosu na RHEL 6. Koristi se systemd za upravljanje servisima.

Većina softvera kao što su Apache, PHP, MySQL i Nginx automatski se dodaju u servise prilikom instalacije.

Uzmimo za primer PHP-FPM.

Prvo, proverimo status php-fpm (pretpostavlja se da već imate skripte u /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] ~]#

Kao što vidite, status je „disabled“, što znači da nije konfigurisan za automatsko pokretanje.

Omogućimo php-fpm da se pokreće pri startovanju sistema pomoću 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] ~]#

Sada, proverimo ponovo status:

[[email protected] ~]# systemctl status php-fpm
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 je spreman za automatsko pokretanje. Restartujmo server da bismo testirali konfiguraciju.

Ako želite da onemogućite automatsko pokretanje servisa, koristite sledeću komandu:

systemctl disable php-fpm

Možda će vam biti korisno da pogledate dodatni materijal o sistemskim servisima i njihovom automatskom pokretanju.

Ubuntu

Konfiguracija automatskog pokretanja servisa u Ubuntu-u je malo drugačija. Pretpostavimo da se skripta zove Nginx.

  • Prijavite se na Ubuntu server kao root korisnik.
  • Kopirajte skriptu u direktorijum /etc/init.d/.
  • Izvršite sledeću naredbu:
update-rc.d nginx defaults
  • Restartujte server da biste potvrdili da su servisi pokrenuti.

Nadam se da vam je ovaj vodič bio koristan.

Administracija sistema je često zabavna i izazovna. Ukoliko želite da unapredite svoju karijeru u ovoj oblasti, preporučujemo Udemy kurs.

Takođe, možete pogledati kako da pronađete uzrok iznenadnog restartovanja Linux sistema.
Možete pogledati i kako da instalirate ili nadogradite PHP-FPM 5.6 na CentOS 6.x.

Da li ste uživali u čitanju ovog teksta? Ako jeste, podelite ga sa drugima!