Come utilizzare il comando systemctl per abilitare e disabilitare i servizi

Come Utilizzare Il Comando Systemctl Per Abilitare E Disabilitare I Servizi



Systemd è uno dei gestori di servizi ampiamente utilizzati su Linux fornito con l'utilità della riga di comando systemctl per gestire i servizi systemd come l'avvio di un servizio, l'arresto, l'abilitazione e la disabilitazione.

In questa guida ti spiegherò come abilitare un servizio su Linux utilizzando il comando systemctl e come disabilitarlo.

Cosa significa abilitare un servizio?

Abilitare un servizio è una funzionalità diversa dall'avvio di un servizio. Il comando systemctl start avvia solo il servizio e lo mantiene abilitato finché non viene arrestato manualmente prima dell'avvio o finché il sistema non viene riavviato. D'altra parte, abilitare un servizio significa che il servizio verrà avviato all'avvio.







Quando abilitato, un servizio crea un collegamento simbolico nella directory di destinazione , assicurando che il servizio sarà abilitato all'avvio. L'obiettivo è specificato nel file [Installare] sezione del file di servizio con il file WantedBy direttiva.





Nell'immagine sopra, l'obiettivo è target.multiutente che indica il livello di esecuzione di un sistema. Multi-user.target significa che il servizio sarà abilitato quando il sistema avrà raggiunto lo stato di fornire sessioni non grafiche multiutente.





Come abilitare un servizio su Linux

Prima di abilitare un servizio, controlla innanzitutto se è già abilitato o disabilitato utilizzando il è-abilita d opzione con systemctl.

sudo systemctl è abilitato [ Nome di Servizio ]

Per abilitare l'avvio di uno o più servizi all'avvio, utilizzare il file systemctl comandare con il abilitare opzione.



sudo systemctl abilitare [ Nome di Servizio ]

Nei comandi precedenti, sostituisci il file [Nome di Servizio] con il nome del servizio o il percorso del servizio.

Ad esempio, per abilitare il servizio SSH.

sudo systemctl abilitare ssh.service

All'abilitazione, crea un file multi-utente.target.vuole directory nel /etc/systemd/system che contiene il collegamento simbolico al file di servizio.

L'abilitazione di un servizio utilizzando il comando systemctl Enable non attiva il servizio. Per abilitare il servizio ed avviarlo subito utilizzare il file abilitare E -Ora opzioni.

sudo systemctl abilitare --Ora [ Nome di Servizio ]

Come riattivare un servizio su Linux

Riabilitare un servizio significa prima disabilitare il servizio e poi riabilitarlo. Rimuove i collegamenti simbolici del servizio e li ricrea.

sudo systemctl riattivabile [ Nome di Servizio ]

Riabilitiamo il servizio SSH utilizzando il comando precedente.

sudo systemctl riabilita ssh.service

Come si può vedere nell'output, i file con collegamento simbolico dal file /etc/systemd/system directory vengono prima rimosse e poi create nuovamente. Non avvia né interrompe il servizio; il servizio rimarrà nel suo stato originale.

Tieni presente che la riattivazione accetta solo i nomi dei servizi e non accetta i percorsi.

Come disabilitare un servizio su Linux

Usa systemctl con il file disattivare opzione per disabilitare uno o più servizi.

sudo systemctl disabilita [ Nome di Servizio ]

Non accetta il percorso del file di servizio.

Ad esempio, disabilitiamo il servizio ssh.

sudo systemctl disabilita ssh.service

La disabilitazione del servizio non interromperà il servizio, poiché continuerà a essere eseguito a meno che non venga arrestato manualmente o il sistema non venga riavviato.

Per disabilitare e interrompere immediatamente il servizio utilizzare il file -Ora opzione con systemctl.

sudo systemctl disabilita --Ora [ Nome di Servizio ]

Conclusione

Per impostare un servizio su abilitato all'avvio, il comando systemctl viene utilizzato con l'opzione abilita. Richiede uno o più nomi o percorsi di servizio/unità. Nel tutorial ho spiegato come abilitare un servizio e come riabilitare un servizio. Inoltre ho preso in considerazione anche la menzione della disabilitazione dei comandi di servizio. Per ulteriori informazioni sull'utilità della riga di comando systemctl, utilizzare il file man systemctl comando.