Авторестарт демона после падения
17 Jul 2009 | Автор: dd |Есть демон, чья работа критична для системы. Бывают ситуации когда он может вылететь без предупреждения и ночь пойдет на смарку. Наша задача составить скриптик для проверки состояния демона и его старта, в том случае когда он отсутствует в процессах. Возьмем время повтора тестирования 5 секунд:
################################
while [ 0 -eq 0 ]; do
[ -z “`ps axu | grep имя процесса | grep имя владельца процесса | grep -v grep`” ] && команда для запуска
sleep 5
done
################################
Для закрепления пройденного материала накропим скриптик для рестарта веб-сервера под апачем:
Имя процесса – httpd
Пользователь родительского процесса – root
Команда для старта – apachectrl startssl
Соответственно:
#!/bin/sh
while [ 0 -eq 0 ]; do
[ -z "`ps axu | grep http | grep root | grep -v grep`" ] && apachectrl startssl
sleep 5
done
Для автоматизации загрузки этого процесса – прописываем его в /etc/rc.local
.
Запускать это скрипт следует с операндом & чтобы он запускался как демон в теневом режиме:
# /etc/init.d/script.restart &
Теги: FreeBSD, Unix, настройка системы