| #!/bin/sh |
| # |
| ### BEGIN INIT INFO |
| # Provides: watchquagga |
| # Required-Start: $local_fs $network $remote_fs $syslog |
| # Required-Stop: $local_fs $network $remote_fs $syslog |
| # Default-Start: 2 3 4 5 |
| # Default-Stop: 0 1 6 |
| # Short-Description: start and stop the Quagga watchdog |
| ### END INIT INFO |
| |
| PATH=/bin:/usr/bin:/sbin:/usr/sbin |
| |
| # Load configuration |
| test -f /etc/default/watchquagga && . /etc/default/watchquagga |
| |
| # Check that there are daemons to be monitored. |
| [ -z "$watch_daemons" ] && exit 0 |
| |
| pidfile="/var/run/quagga/watchquagga.pid" |
| |
| case "$1" in |
| start) |
| echo -n "Starting quagga watchdog daemon: watchquagga" |
| start-stop-daemon --start \ |
| --pidfile $pidfile \ |
| --exec /usr/sbin/watchquagga \ |
| -- -d $watch_options $watch_daemons |
| echo "." |
| ;; |
| |
| stop) |
| echo -n "Stopping quagga watchdog daemon: watchquagga" |
| start-stop-daemon --stop --quiet \ |
| --pidfile $pidfile |
| echo "." |
| ;; |
| |
| status) |
| echo -n "watchquagga " |
| res=1 |
| [ -e $pidfile ] && kill -0 `cat $pidfile` 2> /dev/null |
| if [ $? -eq 0 ]; then |
| echo "(pid `cat $pidfile`) is running..." |
| res=0 |
| else |
| echo "is stopped..." |
| fi |
| exit $res |
| ;; |
| |
| restart|force-reload) |
| $0 stop $2 |
| sleep 1 |
| $0 start $2 |
| ;; |
| |
| *) |
| echo "Usage: /etc/init.d/watchquagga {start|stop|restart|force-reload}" |
| exit 1 |
| ;; |
| esac |
| |
| exit 0 |