Re: Вот как бы этому вашему systemd объяснить...
On 10/25/17 12:07, Victor Wagner wrote:
> Коллеги,
>
> есть вот такой service file:
>
> [Unit]
> Description=Virtual Workstation Autostart
> Documentation=man:vws(1)
> After=network.target dnsmasq.service
> [Service]
> Type=forking
> ExecStart=/usr/bin/vws autostart
> ExecStop=/usr/bin/vws shutdown --wait
> Restart=no
> [Install]
> WantedBy=multi-user.target
> Alias=vws.service
>
>
> Вот что надо туда дописать, чтобы systemd понимал, что если процесс
> vws autostart завершился с нулевым кодом и не оставил ни одного
> потомка, то так и надо, и сервис active, а ExecStop при покладании
> системы надо выполнять?
>
Не уверен, что правильно понял задачу (недостаточно подробно описаны
возможные кейзы), но если понял правильно, то:
1) чтобы процесс считался запущенным при завершении ExecStart с нулевым
кодом вне зависимости от того, породились потомки, или нет, и при этом
не считался запущенным, если ExecStart вышел с ненулевым кодом:
Type=oneshot
RemainAfterExit=yes
2) если процесс в результате 1) считается запущенным, то ему будет выдан
ExecStop
Reply to: