#! /bin/sh # ### BEGIN INIT INFO # Provides: micasad # Required-Start: # Should-Start: # Required-Stop: # Should-Stop: # Default-Start: 1 2 3 5 # Default-Stop: # Short-Description: miCASA daemon # Description: miCASA daemon ### END INIT INFO MICASAD_BIN=/usr/sbin/micasad.sh test -x $MICASAD_BIN || exit 5 . /etc/rc.status # Shell functions sourced from /etc/rc.status: # rc_check check and set local and overall rc status # rc_status check and set local and overall rc status # rc_status -v ditto but be verbose in local rc status # rc_status -v -r ditto and clear the local rc status # rc_failed set local and overall rc status to failed # rc_reset clear local rc status (overall remains) # rc_exit exit appropriate to overall rc status # First reset status of this service rc_reset function pid_exists() { test -f /var/run/micasad.pid 2> /dev/null } function process_running() { kill -0 `cat /var/run/micasad.pid` 2> /dev/null } function is_running() { pid_exists && process_running } case "$1" in start) if ! is_running; then \ echo -n "Starting miCASA daemon" $MICASAD_BIN fi # Remember status and be verbose rc_status -v ;; stop) if is_running; then \ echo -n "Shutting down miCASA daemon" #killproc -TERM $MICASAD_BIN pid=`cat /var/run/micasad.pid` >/dev/null 2>&1 kill -s TERM $pid >/dev/null 2>&1 fi # Remember status and be verbose rc_status -v ;; try-restart|condrestart) $0 status if test $? = 0 then $0 restart else rc_reset # Not running is not a failure. fi # Remember status and be quiet rc_status ;; restart) ## Stop the service and regardless of whether it was ## running or not, start it again. echo "Restarting miCASA daemon" $0 stop $0 start # Remember status and be quiet rc_status ;; reload) ## Stop the service and regardless of whether it was ## running or not, start it again. echo "Restarting miCASA daemon" $0 stop $0 start # Remember status and be quiet rc_status ;; force-reload) ## Stop the service and regardless of whether it was ## running or not, start it again. echo "Restarting miCASA daemon" $0 stop $0 start # Remember status and be quiet rc_status ;; status) echo -n "Checking miCASA daemon" if pid_exists && ! process_running 2> /dev/null; then \ rc_failed 1 elif ! pid_exists && ! process_running 2> /dev/null; then \ rc_failed 3 fi rc_status -v ;; *) echo "Usage: $0 {start|stop|restart|try-restart|reload|force-reload|status}" exit 1 ;; esac rc_exit