Lo sapevi?

La nostra rete è interamente "Layer 3 to the edge" al fine di garantire la massima affidabilità e scalabilità!

Come gestire i servizi con systemctl su Linux

Estimated reading: 3 minutes 11 views

Quando installi un software su Linux, come Nginx, Apache, MySQL, Docker o PostgreSQL, questo viene generalmente eseguito come servizio di sistema.

Per gestire questi servizi si utilizza systemctl, il comando fornito da systemd, il sistema di inizializzazione adottato dalla maggior parte delle moderne distribuzioni Linux, tra cui Ubuntu, Debian, AlmaLinux e molte altre.

In questa guida vedremo i comandi principali di systemctl per avviare, arrestare, riavviare, verificare e configurare i servizi direttamente dal terminale.

Prerequisiti

Prima di procedere assicurati di avere:

  • accesso al terminale;
  • un utente con permessi sudo;
  • un sistema Linux che utilizzi systemd (ad esempio Ubuntu, Debian o AlmaLinux).

Verificare lo stato di un servizio

Per controllare se un servizio è in esecuzione utilizza:

				
					sudo systemctl status nomeservizio
				
			

Tra le informazioni visualizzate troverai:

  • se il servizio è attivo;
  • da quanto tempo è in esecuzione;
  • l’eventuale PID del processo;
  • gli ultimi messaggi registrati.

Avviare un servizio

Per avviare un servizio che non è in esecuzione:

				
					sudo systemctl start nomeservizio
				
			

Il comando avvia il servizio senza produrre alcun messaggio se l’operazione va a buon fine.

Arrestare un servizio

Per fermare un servizio in esecuzione utilizza:

				
					sudo systemctl stop nomeservizio
				
			

Il servizio verrà arrestato fino al successivo avvio manuale o al riavvio del sistema, se configurato per partire automaticamente.

Riavviare un servizio

Dopo aver modificato un file di configurazione è spesso necessario riavviare il servizio affinché le modifiche vengano applicate.

Puoi farlo con:

				
					sudo systemctl restart nomeservizio
				
			

Ricaricare la configurazione di un servizio

Alcuni servizi consentono di ricaricare la configurazione senza interrompere il funzionamento.

Il comando è:

				
					sudo systemctl reload nomeservizio
				
			

Quando supportato, reload evita l’interruzione del servizio ed è preferibile a restart per applicare modifiche che non richiedono un riavvio completo.

Abilitare l'avvio automatico

Per fare in modo che un servizio venga avviato automaticamente ad ogni avvio del sistema utilizza:

				
					sudo systemctl enable nomeservizio
				
			

Questa operazione è utile per servizi che devono essere sempre disponibili, come web server o database.

Disabilitare l'avvio automatico

Se non desideri che un servizio venga avviato automaticamente all’accensione del sistema:

				
					sudo systemctl disable nomeservizio
				
			

Il servizio rimarrà installato ma non verrà più avviato automaticamente.

Riavviare un servizio e abilitarlo all'avvio

Per visualizzare tutti i servizi presenti sul sistema:

				
					systemctl list-units --type=service
				
			

Se invece vuoi vedere anche quelli non attivi:

				
					systemctl list-unit-files --type=service
				
			

Questi comandi possono essere utili per individuare rapidamente il nome corretto di un servizio.

Sintesi dei comandi principali di systemctl

Operazione Comando
Verificare lo stato
sudo systemctl status nomeservizio
Avviare un servizio
sudo systemctl start nomeservizio
Arrestare un servizio
sudo systemctl stop nomeservizio
Riavviare un servizio
sudo systemctl restart nomeservizio
Ricaricare la configurazione
sudo systemctl reload nomeservizio
Abilitare l'avvio automatico
sudo systemctl enable nomeservizio
Disabilitare l'avvio automatico
sudo systemctl disable nomeservizio
Elencare i servizi
systemctl list-units --type=service

Leave a Comment

Share this Doc

Come gestire i servizi con systemctl su Linux

Or copy link

CONTENTS