WIN 20160519 12 42 04 Pro

De azi înainte, am adăugat pe acest blog un tag pe care l-am denumit Note lucru, unde voi colecta diverse informații și metode de lucru utile pe care le-am folosit de-a lungul timpului. În general aceste articole sunt traduceri și adaptări și voi menționa sursele la final. În acest articol reținem metodele prin care activăm / dezactivăm servicii pe CentOS 7.

Cum verific dacă un serviciu este activat la boot ?

Serviciile din RHEL/CentOS 7 se gestionează folosind systemctl, care este gestionarul de servicii systemd.

Pentru a verifica dacă un serviciu pornește la boot, rulăm comanda systemctl status urmată de numele serviciului și ne uităm la rândul „Loaded”.

$ systemctl status httpd
httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled)
...

Ultimul cuvânt de acolo, enabled sau disabled ne spune exact dacă serviciul pornește la boot. În exemplul de mai sus, serverul web Apache2 „httpd”, este activat la boot.

Cum dezactivez un serviciu de la boot pe CentOS 7 ?

Pentru dezactivare, rulăm comanda systemctl disable urmată de numele serviciului.

$ systemctl disable httpd
rm '/etc/systemd/system/multi-user.target.wants/httpd.service'

$ systemctl status httpd
httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled)
...

Rularea systemctl disable șterge symlink-ul spre serviciu din /etc/systemd/system/*. Ulterior acel serviciu nu va mai porni la boot.

Cum activez un serviciu la boot pe CentOS 7 ?

Pentru activare, rulăm comanda systemctl enable urmată de numele serviciului.

$ systemctl enable httpd
ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'

$ systemctl status httpd
httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled)
...

Symlink-ul șters la dezactivare este re-creat și serviciul va porni la boot.

Cum verific ce servicii nu au pornit la boot pe CentOS 7 ?

Comanda systemctl ne permite să listăm toate serviciile care din diferite motive nu au pornit la ultimul boot al sistemului, deși erau configurate să o facă.

root@server [/]# systemctl --failed
 UNIT LOAD ACTIVE SUB DESCRIPTION
● cpgreylistd.service loaded failed failed cPanel Greylisting Daemon
● mailman.service loaded failed failed mailman services
● maldet.service loaded failed failed Linux Malware Detect monitoring - maldet
● mattermost.service loaded failed failed Mattermost

LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.

4 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.

În exemplul meu, serviciile cpgreylisted, mailman, maldet si mattermost nu au pornit la boot-area serverului.

Sursa: https://ma.ttias.be/enable-disable-service-at-boot-on-centos-7/

Cosmin

Pasionat de blogging și tehnologie încă din 2009, Cosmin este aici să te ajute să-ți crești vânzările și productivitatea punând tehnologia la treabă pentru tine.