Немного странно ожидать, что потерянные процессы сохранятся после остановки службы. Вы останетесь с системой, которая находится в неизвестном состоянии. Что произойдет, если вы снова запустите службу?
Я думаю, что вы, вероятно, хотите сложнее, чем один сервис.
Допустим, вы хотели develop.service
для запуска proc1
и proc2
. Вы хотите, чтобы systemctl stop develop.service
убил proc1
, но не proc2
. В этом случае вам все еще нужно что-то для управления proc2
, в противном случае у вас есть неконтролируемый и неконтролируемый процесс. Ответ заключается в использовании другой службы.
Вместо этого попробуйте создать две службы. develop.service
запустит proc1
, возможно, используя ваши скрипты. Затем добавьте Wants=proc2.service
в свой раздел [Unit]
. proc2.service
будет нести ответственность за proc2
.
Это означает, что systemctl start develop.service
запустит proc1
и proc2
. Между тем systemctl stop develop.service
убьет только proc1
. proc2
все еще можно остановить / контролировать, проверив proc2.service
.