Ето това е нашия скрипт под FreeBSD, който следи за spamd демона и го пуска ако не работи, като пише и в лог файл. Само трябва да си заместиш съответните полета и sleep да си го сложиш на 10. Пътищата вероятно са различни за Debian. Стартираш скрипта със & накрая.
#!/bin/sh
prefix=/usr/local/
exec_prefix=${prefix}
logdir=${prefix}
PATH=${exec_prefix}/bin:/bin:/usr/bin:/sbin:
export PATH
programbinary="/usr/local/bin/spamd"
programstart="/usr/local/etc/rc.d/sa-spamd start"
startProgram () {
echo "Running: $programstart"
echo "Startup: `date`" >> /var/log/spamd_watch.log
$programstart >> /var/log/spamd_watch.log 2>&1 &
}
testProgram () {
Program="true"
ps -ax|grep -v grep|grep $programbinary >> /dev/null
if [ $? -eq 1 ] ; then
Program="false"
fi
export Program
}
failcount=0
start=`date '+%s'`
while : ; do
testProgram
if [ $Program = "false" ]; then
laststart=$start
start=`date '+%s'`
startProgram
t=`expr $start - $laststart`
if test 0 -le $t -a $t -lt 15 ; then
failcount=`expr $failcount + 1`
else
failcount=0
fi
if test $failcount -gt 5 ; then
echo "RunProgram: EXITING DUE TO REPEATED, FREQUENT FAILURES" >&2
exit 1
fi
fi
sleep 30
done