Я использую systemd для последовательного запуска/остановки 4 служб с помощью полей Requires/After/Before/BindsTo.
systemctl start service01
инициировать такой порядок запуска:
сервис01 -> сервис02 -> сервис03 -> сервис04
Действие остановки настраивается через BindTo на стороне service0[234]. Они привязаны к service01, поэтому в случае его остановки другие службы также будут остановлены.
Однако из-за некоторых проблем необходимо настроить задержку в 5–10 секунд между запуском service02 и service03.
Можно ли использовать для этого systemd?
Конечно, я мог бы просто добавить «sleep 10» в начало ExecStart в service03, но, возможно, есть и другие способы использовать systemd для этой цели.
решение1
Естьтаймерюниты в systemd. Попробуйте использовать OnUnitActiveSec=
option, если вы решили использовать таймер для задачи.