我一直在调查修复 systemd 看门狗的问题,但没有成功。我有很多属于Type=notify
.如果系统时间向后设置,则每个服务都会被 systemd 终止,因为它认为已达到看门狗超时。这是来自 systemd 的调试日志
systemd[1]: xxx:service: Unit entered failed state.
systemd[1]: xxx:service: Failed with result 'watchdog'.
有没有办法告诉Systemd在手动更改系统时间时不要重新启动服务?
看门狗不应该依赖于吗CLOCK_MONOTONIC
?这是 Systemd 中的已知问题吗?
答案1
有没有办法告诉Systemd在手动更改系统时间时不要重新启动服务?
不。根据man systemd.service
for的文档WatchDogSec=
,没有承诺 systemd 将使用单调计时器来跟踪它,因此它会像广告中那样工作。
如果您认为应该改变行为,您可以与 systemd 开发人员讨论或提出问题:
https://github.com/systemd/systemd/issues?utf8=%E2%9C%93&q=WatchDogSec%3D