Como posso listar todos enabled
serviços de systemctl
?
Eu sei correr systemctl
o comando por si só lista todos os Serviços, mas eu gostaria de obter apenas o enabled
o.
Como posso listar todos enabled
serviços de systemctl
?
Eu sei correr systemctl
o comando por si só lista todos os Serviços, mas eu gostaria de obter apenas o enabled
o.
systemctl list-unit-files | grep enabled
irá listar todos habilitado o.
Se você quiser quais são atualmente execucao, você precisa systemctl | grep running
.
Use o que você está procurando. Habilitado, não significa que está em execução. 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 reiniciá-lo e ele será iniciado.
Em execução significa que ele está realmente em execução agora, mas se não estiver habilitado, ele não será reiniciado quando você reiniciar.
man systemctl
membro:
--state=
O argumento deve ser uma lista separada por vírgulas de unidade
LOAD
,SUB
, ouACTIVE
membro. Ao listar unidades, mostre apenas aquelas nos Estados especificados. Usar--state=failed
para mostrar apenas unidades com falha.
Explicacao:
LOAD
: Reflete se a definição da unidade foi carregada corretamente.ACTIVE
: O estado de ativação da unidade de alto nível, ou seja, generalização de SUB
.SUB
: O estado de ativação da unidade de baixo nível, os valores dependem do tipo de unidade.
Embora você também possa usar isso para mostrar apenas enabled
unidades com:
systemctl list-unit-files --state=enabled
Se uma unidade é enabled
isso significa que o sistema irá iniciá-lo na inicialização. Embora definindo algo para enabled
na verdade, também não start
então você precisará fazer isso manualmente ou reiniciar o sistema depois de configurá-lo para enabled
.
Para listar todos os systemd
serviço que estão em state=active
e sub=running
systemctl list-units --type=service --state=running
Para listar todos os systemd
serice que estão em state=active
e sub correndo ou saindo
systemctl list-units --type=service --state=active
Para ver os serviços 'habilitados', incluindo aqueles que ainda estão em execução upstart / init:
systemctl list-unit-files --type service --state enabled,generated
Para ver todos os Serviços atualmente em execução:
systemctl list-units --type service --state running
Também Visão Geral de todos os serviços ativos e com falha:
systemctl list-units --type service --state running,failed
Existe um bom aplicativo GUI chamado Stacer, onde você pode gerenciar todos os Serviços.
Verifique seu link do Github Stacer Github
Verificar Site para mais informações
Além das respostas atuais, uso o seguinte para obter apenas os nomes dos serviços:
systemctl list-units --type=service --state=active,running | awk '/.*\.service/ {print $1}'
Em vez do formato tabular, Isso torna mais fácil canalizar apenas esses serviços para outro programa
@ Gen habilitar um serviço é bem diferente de iniciá-lo. Veja ‘Man systemctl’`
Fascinante. A resposta com classificação mais baixa é a resposta mais" correta", embora claramente não seja a melhor resposta. Esta excelente pergunta (e suas respostas) é um exemplo interessante de como o systemd viola os princípios de design de longa data (e brilhantes) do Unix & Co. @ FelipeAlvarez reclama que a resposta mais aceita assume que systemd segue a filosofia de design unix, mas systemd/systemctl pode fazer exatamente o que ele quer (a maioria dos usuários experientes considerará apenas esse inchaço completo). Começo a ver mais claramente por que Linus Torvalds é tão veementemente crítico do systemd.
o que você quer dizer com habilitado? Você quer dizer serviços que estão em execução?