[an error occurred while processing this directive]

Скрипт для восстановления процессов на случай сбоя
Иногда случается, что при сбое (например при большой нагрузке или при временном отсутствии 
каналов связи) важные демоны самостоятельно завершают свою работу.
Например может случаться вот такая ошибка
    squid[703]: Exiting due to repeated, frequent failures
Такое же может иногда случаться с IPA (/usr/ports/sysutils/ipa) и Apache.

Чтобы автоматизировать отслеживание таких процессов можно создать
`crontab -e` задание (на примере Squid)

   5,35 * * * * /usr/local/etc/rc.d/checksquid


./checksquid:

   proc="squid"

   PIDFILE=/var/run/${proc}.pid
   if [ -f $PIDFILE ] ; then
        PID=`head $PIDFILE`
        if [ "x$PID" != "x" ] && kill -0 $PID 2>/dev/null ; then
            RUNNING=1
        else
            RUNNING=0
        fi
   else
        RUNNING=0
   fi

   if [ $RUNNING -eq 0 ]; then
        echo "Starting $proc again..."
        /usr/local/etc/rc.d/${proc}.sh start
        continue
   else
        echo "$proc already running"
   fi

Нужно только убедиться что нужные PID файлы хранятся в /var/run. 
Директивы pid_filename в squid.conf, PidFile в httpd.conf
 
03.09.2005 , Автор: Yurik
Ключи: pid, kill, shell, script / Лицензия: CC-BY
Раздел:    Корень / Программисту и web-разработчику / Shell / Готовые скрипты

[an error occurred while processing this directive]

[an error occurred while processing this directive]