Como listar todos os serviços habilitados do systemctl?

109

Como posso listar todos os enabled services de systemctl ?

Eu sei que systmctl lista todos os serviços, mas gostaria de obter apenas o enabled uma vez.

    
por oceanBT 05.07.2016 / 20:17

3 respostas

166

systemctl list-unit-files | grep enabled listará todos os ativados .

Se você quiser quais estão atualmente em execução , precisará de systemctl | grep running .

Use o que você está procurando. Ativado, não significa que esteja funcionando. E correr não significa que está habilitado. São duas coisas diferentes.

Ativado significa que o sistema executará o serviço na próxima inicialização. Portanto, se você ativar um serviço, ainda precisará iniciá-lo manualmente ou reinicializar e ele será iniciado.

A execução significa que ele está sendo executado agora, mas, se não estiver ativado, não será reiniciado quando você reiniciar.

    
por Dorian 05.07.2016 / 20:52
39

man systemctl states:

   --state=
       The argument should be a comma-separated list of unit LOAD, SUB, or ACTIVE states. When listing units, show only those in the specified
       states. Use --state=failed to show only failed units.

Explicação:

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

Embora você também possa usar isso para mostrar apenas enabled unidades com:

systemctl list-unit-files --state=enabled

Se uma unidade for enabled , isso significa que o sistema será iniciado na inicialização. Embora definir algo como enabled na verdade também não seja start , você precisará fazer isso manualmente ou reinicializar o sistema depois de defini-lo como enabled .

    
por Great Uncle Bulgaria 05.07.2016 / 20:58
23
  1. Para listar todos os serviços systemd que estão em state=active e sub=running

    systemctl list-units --type=service --state=running
    
  2. Para listar todos os systemd serice que estão em state=active e subexecutados ou encerrados

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

Espero que isso resolva o problema.

    
por Ankit Kumar Honey 14.09.2017 / 05:59