Как лучше всего отправить патч, чтобы исправить все повреждения, которые наносит 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 ...
Спасибо
источник