In Linux, un servizio è un processo in background che esegue una funzione o un compito specifico su un computer o un server senza l'interazione diretta dell'utente. I servizi in Linux vengono eseguiti in background, sono spesso avviati all'avvio del sistema e di solito non richiedono il login dell'utente.
Perché vedere i servizi in esecuzione
La visualizzazione dell'elenco dei servizi in esecuzione in Linux è utile per diversi motivi:
- Debug e diagnostica: la visualizzazione dell'elenco dei servizi in esecuzione aiuta a determinare quali servizi sono in esecuzione sul sistema e quali sono attualmente in esecuzione. Se si riscontrano problemi nel funzionamento del sistema, è possibile verificare se ci sono errori o conflitti tra i servizi in esecuzione.
- Gestione delle risorse: i servizi in esecuzione possono consumare risorse quali tempo di CPU, memoria o risorse di rete. La visualizzazione dell'elenco dei servizi può aiutare a determinare quali servizi consumano più risorse e possono causare un uso inefficiente del sistema.
- Controllare il caricamento automatico: la visualizzazione dell'elenco dei servizi in esecuzione consente di assicurarsi che all'avvio del sistema vengano caricati automaticamente solo i servizi necessari. È possibile verificare quali servizi sono configurati per il caricamento automatico e modificare l'elenco se necessario.
Come visualizzare i servizi in esecuzione in Linux
Per visualizzare l'elenco dei servizi in esecuzione (unità) in systemctl, eseguire il comando:
systemctl list-units --type=service
Systemctl senza alcun parametro. Questo mostrerà un elenco di tutti i servizi sul sistema, il loro stato (in esecuzione o fermi) e altre informazioni su di essi.
È anche possibile limitare l'output ai soli servizi in esecuzione aggiungendo un parametro:
--state=running: systemctl list-units --type=service --state=running
Questo mostrerà solo i servizi in esecuzione sul sistema.
Se si desiderano informazioni più dettagliate su ciascun servizio, è possibile utilizzare il parametro:
--full`: `systemctl list-units --type=service --full
Questo mostrerà informazioni dettagliate su ogni servizio, compresa la descrizione e i percorsi dei file.
È anche possibile utilizzare dei comandi di filtro nell'output, ad esempio per trovare un servizio specifico in base al suo nome:
systemctl list-units --type=service | grep <service_name>
Questo troverà il servizio con il nome specificato nell'elenco. Per visualizzare l'elenco dei servizi in esecuzione, è necessario disporre dei privilegi di root o utilizzare un comando con il prefisso sudo.