等待 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

将停止应用程序,并在停止后进行备份,然后重新启动它。

虽然它不完全符合您的要求,但它达到了同样的目标,而且效果很好:)

相关内容