Ожидание остановки службы daemontools
Я запускаю сервис под daemontools, который останавливается при отправке сигнала TERM несколько секунд. Мне нужно остановить его в сценарии, а затем дождаться остановки процесса, прежде чем продолжать делать снимок LVM или перезапускать службу.
Предоставляет ли daemontools способ сделать это? Если нет, как лучше? Я думал о том, чтобы спать, пока svcok выходит с 0, но кажется, что это должно быть распространенной проблемой с более простым решением. Мысли?
1 ответ
Способ, который я уже использовал, состоит в том, чтобы по-другому решить проблему: в своем скрипте запуска вы можете сделать все, что захотите, до запуска приложения, чтобы вы могли сделать это:
#!/bin/sh
# backup anything you want
rsync xxxx
exec /path/to/app
а потом:
svc -du /path/to/service
остановит приложение, а когда остановится, создаст резервную копию и перезапустит ее.
Хотя это не совсем то, что вы просили, оно служит той же цели и работает хорошо:)