From ba4eee3ae5a36c82c0fec4c3d768e6e35d4aefe9 Mon Sep 17 00:00:00 2001 From: bdheeman Date: Sat, 28 Jun 2014 10:44:04 +0530 Subject: [PATCH] Generalize rc/init script; make it work nicly ;) --- mistserver.init | 58 +++++++++++++++++++++++++++++++++++-------------- 1 file changed, 42 insertions(+), 16 deletions(-) diff --git a/mistserver.init b/mistserver.init index 87911c1a..8cfe1dd3 100644 --- a/mistserver.init +++ b/mistserver.init @@ -8,12 +8,27 @@ # Description: MistServer - next generation multimedia server ### END INIT INFO +NAME=MistController +DESC="MistServer" +CFG_FILE=/etc/mistserver.conf +LOG_FILE=/var/log/mistserver.log +PID_FILE=/var/run/mistserver.pid + + +# Source function library. +. /etc/rc.d/init.d/functions + # # Function that starts the daemon/service # do_start() { - MistController -d -L /var/log/mistserver.log -c /etc/mistserver.conf + echo -n "Starting $DESC" "$NAME" + MistController -d -L $LOG_FILE -c $CFG_FILE + RETVAL=$? + [ $RETVAL = 0 ] && touch /var/lock/subsys/$NAME && echo $!>$PID_FILE && echo_success || echo_failure + echo + return $RETVAL } # @@ -21,26 +36,37 @@ do_start() # do_stop() { - killall MistController + echo -n "Stopping $DESC" "$NAME" + killall MistController >/dev/null 2>&1 + RETVAL=$? + [ $RETVAL = 0 ] && rm -f /var/lock/subsys/$NAME $PID_FILE && echo_success || echo_failure + echo + return $RETVAL +} + +do_restart() +{ + echo -n "Restarting $DESC" "$NAME" + [[ -f /var/lock/subsys/$NAME ]] && killall MistController >/dev/null 2>&1 && rm -f /var/lock/subsys/$NAME $PID_FILE && sleep 2 + MistController -d -L $LOG_FILE -c $CFG_FILE + RETVAL=$? + [ $RETVAL = 0 ] && touch /var/lock/subsys/$NAME && echo $!>$PID_FILE && echo_success || echo_failure + echo + return $RETVAL } case "$1" in start) - echo "Starting MistServer" - do_start - ;; + do_start + ;; stop) - echo "Stopping MistServer" - do_stop - ;; + do_stop + ;; restart) - log_daemon_msg "Restarting $DESC" "$NAME" - do_stop - sleep 2 - do_start - ;; + do_restart + ;; *) - echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2 - exit 3 - ;; + echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2 + exit 3 + ;; esac