Намирате ли грешки в този код? За първи път пиша bash script, поне на пръв поглед работи.
#!/bin/sh
SERVICE='vpnc'
if ps ax | grep -v grep | grep $SERVICE > /dev/null
then
echo "$SERVICE service running, everything is fine"
else
echo "$SERVICE is not running"
echo "Starting $SERVICE"
vpnc test --local-port 0 --pid-file /var/run/vpnc/pid
fi
Нормален код, само може да заместиш echo с logger, например:
logger "$SERVICE is not running, starting now"
Така съобщенията ще ти отиват в messages, вместо в cron лог-а. Но ако ти е все едно може и да не променяш нищо. Освен това може да махнеш едната част на if-a и да не отчиташ, че cron се е изпълнил, той и без това няма къде да ходи, да оставиш само частта при която vpnc действително се стартира отново.