1#!/bin/sh 2# 3### BEGIN INIT INFO 4# Provides: watchquagga 5# Required-Start: $local_fs $network $remote_fs $syslog 6# Required-Stop: $local_fs $network $remote_fs $syslog 7# Default-Start: 2 3 4 5 8# Default-Stop: 0 1 6 9# Short-Description: start and stop the Quagga watchdog 10### END INIT INFO 11 12PATH=/bin:/usr/bin:/sbin:/usr/sbin 13 14# Load configuration 15test -f /etc/default/watchquagga && . /etc/default/watchquagga 16 17# Check that there are daemons to be monitored. 18[ -z "$watch_daemons" ] && exit 0 19 20pidfile="/var/run/quagga/watchquagga.pid" 21 22case "$1" in 23 start) 24 echo -n "Starting quagga watchdog daemon: watchquagga" 25 start-stop-daemon --start \ 26 --pidfile $pidfile \ 27 --exec /usr/sbin/watchquagga \ 28 -- -d $watch_options $watch_daemons 29 echo "." 30 ;; 31 32 stop) 33 echo -n "Stopping quagga watchdog daemon: watchquagga" 34 start-stop-daemon --stop --quiet \ 35 --pidfile $pidfile 36 echo "." 37 ;; 38 39 status) 40 echo -n "watchquagga " 41 res=1 42 [ -e $pidfile ] && kill -0 `cat $pidfile` 2> /dev/null 43 if [ $? -eq 0 ]; then 44 echo "(pid `cat $pidfile`) is running..." 45 res=0 46 else 47 echo "is stopped..." 48 fi 49 exit $res 50 ;; 51 52 restart|force-reload) 53 $0 stop $2 54 sleep 1 55 $0 start $2 56 ;; 57 58 *) 59 echo "Usage: /etc/init.d/watchquagga {start|stop|restart|force-reload}" 60 exit 1 61 ;; 62esac 63 64exit 0 65