redis/redis-initscript.patch

81 lines
2.3 KiB
Diff

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