1

У меня есть несколько Linux-боксов, на каждом из которых запущен сервис. Это единственный важный процесс, работающий на этих машинах. Тем не менее, иногда из-за внутренних изменений в сервисе, он постепенно останавливается. То, что я ищу, - это идиоматический способ выключения всей системы, когда это происходит. По сути, я хочу, чтобы systemd остановил систему, когда служба myservice больше не работает.

Есть простой способ сделать это?

На данный момент я разработал другой сервис myservice-monitor который контролирует myservice а когда он останавливается, myservice-monitor систему. Все это работает, но я подумал, что должен быть способ решить эту проблему более идиоматическим подходом ...

1 ответ1

2

Вы делаете это с помощью systemd , хотя я не знаю, насколько это целесообразно. Если во время обновления происходит сбой службы или ее необходимо перезапустить, то и в этих случаях машина отключится!

Вы можете добавить это в файл systemd для вашего сервиса:

 ExecStopPost=/sbin/halt

Смотрите man systemd.service для полной документации и отказа от ответственности об ExecStopPost .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .