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

