Há um serviço que quero executar apenas quando outro serviço falhar ( [Unit] OnFailure=foo
), mas não quero que esse serviço ( foo
) seja iniciado automaticamente na inicialização. Uma opção está em execução systemctl disable foo
, mas estou procurando outro caminho.
Segundo plano: estou criando uma imagem do sistema operacional e não quero inicializar a máquina, execute esse comando ( systemctl disable foo
) e desligue-o antes de declarar minha imagem final.
systemctl enable
funciona manipulando links simbólicos em/etc/systemd/system/
(para daemons do sistema). Quando você éenable
um serviço, ele analisa asWantedBy
linhas da[Install]
seção e abre links simbólicos nesses.wants
diretórios.systemctl disable
faz o oposto.Você pode simplesmente remover esses links simbólicos - fazer isso manualmente é totalmente equivalente ao uso
systemctl disable
.fonte
Você pode usar
systemctl start ServiceName.service
esystemctl stop Service.Name.service
para iniciar e parar um serviço, respectivamente. Ao contrário desystemctl enable ...
esystemctl disable ...
, os comandos de início e parada duram apenas para a sessão atual; portanto, quando você reinicia a máquina, as alterações não serão salvas.fonte