Como iniciar um serviço na saída de um comando?

0

Gostaria de iniciar um serviço específico após o outro ter completamente iniciado. Especificamente, preciso que um serviço OpenVPN esteja pronto e tenha concluído sua inicialização para iniciar outro serviço.

Eu normalmente usaria After= , mas ele não funciona como planejado com o OpenVPN, que informa que ele foi iniciado logo após o lançamento e antes de sua configuração ser concluída.

Uma solução para isso seria restringir o início do meu serviço ao status de saída ou saída de um script (*) (ou à existência de um arquivo que seria criado pelo dito roteiro).

Isso é possível com o systemd?

(*) O script faz ping de um host conhecido por ser acessível somente através do túnel VPN e sai assim que a conectividade é alcançada (ou solta um arquivo)

    
por WoJ 15.10.2017 / 19:19

1 resposta

0

Você pode configurar a unidade de serviço com

Type=notify
NotifyAccess=all

e faça o último script (ou um filho dele) que é iniciado pelo OpenVPN durante a inicialização (aguarde a saída de registro desejada e depois) chame systemd-notify .

    
por 04.11.2017 / 17:25

Tags