Come elencare tutti i servizi abilitati da systemctl?

127

Come posso elencare tutti i servizi enabled da systemctl ?

So che systmctl elenca tutti i servizi ma vorrei ottenere solo il enabled una volta.

    
posta oceanBT 05.07.2016 - 20:17

4 risposte

189

systemctl list-unit-files | grep enabled elencherà tutti quelli abilitati .

Se vuoi che quelli siano correntemente in esecuzione , devi systemctl | grep running .

Usa quello che stai cercando. Abilitato, non significa che sia in esecuzione. E correre non significa che sia abilitato. Sono due cose diverse.

Abilitato significa che il sistema eseguirà il servizio all'avvio successivo. Pertanto, se abiliti un servizio, devi comunque avviarlo manualmente o riavviarlo e verrà avviato.

In esecuzione significa che in questo momento è in esecuzione, ma se non è abilitato, non si riavvierà al riavvio.

    
risposta data Dorian 05.07.2016 - 20:52
42

man systemctl afferma:

  

--state=

     

L'argomento dovrebbe essere un elenco separato da virgole di unità LOAD , SUB o ACTIVE stati. Quando si elencano le unità, mostra solo quelle negli stati specificati. Usa --state=failed per mostrare solo le unità guaste.

Spiegazione:

LOAD : riflette se la definizione dell'unità è stata caricata correttamente.
ACTIVE : lo stato di attivazione dell'unità di alto livello, ovvero la generalizzazione di SUB .
SUB : l'unità di basso livello stato di attivazione, i valori dipendono dal tipo di unità.

Anche se puoi anche usarlo per mostrare solo enabled unità con:

systemctl list-unit-files --state=enabled

Se un'unità è enabled ciò significa che il sistema lo avvierà all'avvio. Anche se l'impostazione di qualcosa su enabled non è in realtà anche start , quindi dovrai farlo manualmente o riavviare il sistema dopo averlo impostato su enabled .

    
risposta data user364819 05.07.2016 - 20:58
34
  1. Per elencare tutti i servizi systemd che sono in state=active e sub=running

    systemctl list-units --type=service --state=running
    
  2. Per elencare tutti i systemd serice che sono in state=active e sub sia in esecuzione che in uscita

    systemctl list-units --type=service --state=active
    

Spero che questo risolva il problema.

    
risposta data Ankit Kumar Honey 14.09.2017 - 05:59
0

Per vedere i servizi "abilitati" compresi quelli che sono ancora in upstart / init run:

systemctl list-unit-files --type service --state enabled,generated

Per vedere tutti i servizi attualmente in esecuzione:

systemctl list-units --type service --state running
    
risposta data nix-power 30.07.2018 - 18:51

Leggi altre domande sui tag