Index: utils/redis_init_script =================================================================== --- utils/redis_init_script.orig +++ utils/redis_init_script @@ -1,28 +1,44 @@ #!/bin/sh +### BEGIN INIT INFO +# Provides: redis +# Required-Start: $syslog $remote_fs +# Should-Start: +# Required-Stop: $syslog $remote_fs +# Should-Stop: +# Default-Start: 3 5 +# Default-Stop: 0 1 2 6 +# Short-Description: Redis server +# Description: Manages the Redis server +### END INIT INFO REDISPORT=6379 -EXEC=/usr/local/bin/redis-server +EXEC=/usr/sbin/redis-server -PIDFILE=/var/run/redis_${REDISPORT}.pid -CONF="/etc/redis/${REDISPORT}.conf" +PIDFILE=/var/run/redis.pid +CONF=/etc/redis.conf + +. /etc/rc.status case "$1" in start) if [ -f $PIDFILE ] then - echo -n "$PIDFILE exists, process is already running or crashed\n" + echo -n "$PIDFILE exists, process is already running or crashed" + rc_failed else - echo -n "Starting Redis server...\n" + echo -n "Starting Redis server..." $EXEC $CONF + rc_status -v fi ;; stop) if [ ! -f $PIDFILE ] then - echo -n "$PIDFILE does not exist, process is not running\n" + echo -n "$PIDFILE does not exist, process is not running" + rc_failed else - echo -n "Stopping ...\n" - echo -n "SHUTDOWN\r\n" | nc localhost $REDISPORT & + echo -n "Stopping ..." + echo -e "SHUTDOWN\r" | netcat localhost $REDISPORT & PID=$(cat $PIDFILE) while [ -x /proc/${PIDFILE} ] do @@ -31,6 +47,22 @@ case "$1" in done rm $PIDFILE echo "Redis stopped" + rc_status -v + fi + ;; + status) + if [ ! -f $PIDFILE ] + then + echo -n "$PIDFILE does not exist, process is not running" + rc_status -v + else + echo -n "$PIDFILE does exist, process is running" + rc_status -v fi ;; + *) + echo "Usage: $0 [start|stop|status]" + ;; esac + +rc_exit