提交补丁修复LP:#600941造成的所有损害的最佳方法是什么?
我问是因为LP:#600941已放入目前仍受支持的Ubuntu的每个版本中。我应该选择一个特定的版本并ubuntu-bug
在其上运行吗?该版本应该是LTS还是Oneiric或Precise(如果需要,如何获得Precise?)
故事是,在推出之后,我们所有的系统都开始经历Nagios nrpe重新启动失败。
像这样的命令 /etc/init.d/nagios-nrpe-server restart
会导致nrpe停止但无法重新启动。
我将其追溯到/etc/init.d/nagios-nrpe-server
脚本调用的方式start-stop-daemon
。
问题是/etc/init.d/nagios-nrpe-server
脚本中的“ stop”节首先调用start-stop-daemon,该守护进程将SIGTERM发送到nrpe,然后仅等待一秒钟。
如果那时nrpe尚未退出,则pid文件仍然存在,/etc/init.d/nagios-nrpe-server
脚本将删除它。
更糟糕的是,如果/etc/init.d/nagios-nrpe-server restart
使用该方法,不仅会删除pid文件,而且如果nrpe守护进程仍在关闭中,则重新启动nrpe的尝试将失败。
在这种情况下尝试启动将失败,因为nrpe仍将绑定到套接字,并且第二次尝试绑定将导致nrpe启动中止。
他们应该想知道为什么有一条评论“有时pid文件没有被删除”。
他们应该在负载较重,因此nrpe响应时间较慢的系统上进行测试。
解决方法是--retry 10
在的调用中添加或之类的start-stop-daemon ... --stop ...
谢谢