[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

обработка ошибки от init.d



Доброго времени суток,

Есть работающий slapd, который надо время от времени перезагружать.
Написан скрипт, который выполняет следущее:

1) выполняет "/etc/init.d/slapd stop"
2) в цикле проверяет "остановился ли slapd?"
3) если НЕ остановился, то проверить через 1 минуту
4) если Остановился, то выполнить задачу
5) если НЕ остановился спустя 20 попыток - отправить алерт

Бывает, что "/etc/init.d/slapd stop" завершается с ошибкой. Ошибка,
как правило, результат до-о-олгого завершения самого slapd, спустя ~5
минут сервис останавливается корректно, но init.d уже не работает...

Самое печальное в этом алгоритме, что когда завершается с ошибкой
"/etc/init.d/slapd stop" то и мой скрипт так же завершается с ошибкой
и алгоритм завершается на шаге No.2

Вопрос: как корректно и правильней перехватить ошибку от init.d
скрипта, что бы не остановился мой скрипт (на bash), а шаг No.5 отправил
уведомление?

С уважением,
Дима

Reply to: