Il comando service di Linux ti permette di eseguire gli script init del sistema V. Sebbene molte di­stri­bu­zio­ni di Linux uti­liz­zi­no ora altri sistemi di avvio, service funziona ancora nella maggior parte dei casi.

Cos’è il comando service di Linux?

So­prat­tut­to le vecchie di­stri­bu­zio­ni Linux uti­liz­za­no ancora il processo init del sistema V, che ha lo scopo di avviare e arrestare cor­ret­ta­men­te i servizi. I servizi sono programmi che vengono eseguiti au­to­ma­ti­ca­men­te in back­ground all’avvio del computer. Di solito si tratta, da un lato, di servizi di sistema che sono re­spon­sa­bi­li dell’avvio stesso e dell’hardware e, dall’altro, di servizi di server in­stal­la­ti suc­ces­si­va­men­te. Questi servizi fun­zio­na­no nor­mal­men­te senza co­mu­ni­ca­re con gli utenti e non hanno un’in­ter­fac­cia grafica. Per eseguire comunque uno script init del sistema V in modo in­di­pen­den­te, si utilizza il comando service di Linux.

Come funziona service su Linux?

Per eseguire il comando service, è ne­ces­sa­rio disporre dei permessi di root o ag­giun­ge­re il comando sudo di Linux. Se hai i privilegi necessari, puoi uti­liz­za­re il comando per avviare, arrestare, riavviare o re­cu­pe­ra­re lo stato di singoli script, ma non solo. Gli script di avvio del sistema V si trovano nella cartella Linux /etc/init.d/SCRIPT. Molte di­stri­bu­zio­ni come Debian sono nel frattempo passate a systemd. Il comando di Linux è at­tual­men­te ancora com­pa­ti­bi­le con questi script. Un’al­ter­na­ti­va più efficace a questi script, tuttavia, è il comando systemctl. Fon­da­men­tal­men­te, prima di terminare o avviare un processo, bisogna essere sicuri che questo non avrà effetti negativi sul sistema operativo.

Qual è la sintassi del comando service?

La sintassi di base di service su Linux è la seguente:

$ service [script] [azione] [opzione]
bash

Se non si specifica il parametro “[azione]”, nella riga di comando vengono vi­sua­liz­za­te tutte le azioni con­sen­ti­te.

Di quali opzioni e azioni dispone il comando service su Linux?

In senso stretto, service ha solo le opzioni standard “-h” o “–help”, “-v” o “–version” e “-status-all”. Tuttavia, è possibile spe­ci­fi­ca­re il comando con diverse azioni. Le più im­por­tan­ti sono le seguenti:

  • start: avvia lo script.
  • stop: arresta lo script.
  • status: fornisce lo stato attuale dello script.
  • restart: provoca il riavvio dello script.

Esempi di utilizzo del comando service di Linux

Per aiutarti a com­pren­de­re come viene uti­liz­za­to nor­mal­men­te il comando service, con­clu­dia­mo mo­stran­do­ti i suoi usi più im­por­tan­ti.

$ sudo service sshd start
bash

Così avvii lo script sshd.

$ sudo service sshd stop
bash

In questo modo forzi l’arresto dello script sshd.

$ sudo service sshd restart
bash

Per riavviare lo script cor­ri­spon­den­te, questo comando è la scelta giusta.

$ sudo service sshd status
bash

Con questo comando puoi in­ter­ro­ga­re lo stato dello script.

Vai al menu prin­ci­pa­le