a69a0c9c |
1 | #!/bin/sh |
2 | |
3 | REDISPORT=6379 |
4 | EXEC=/usr/local/bin/redis-server |
5 | |
6 | PIDFILE=/var/run/redis_${REDISPORT}.pid |
7 | CONF="/etc/redis/${REDISPORT}.conf" |
8 | |
9 | case "$1" in |
10 | start) |
11 | if [ -f $PIDFILE ] |
12 | then |
13 | echo -n "$PIDFILE exists, process is already running or crashed\n" |
14 | else |
15 | echo -n "Starting Redis server...\n" |
16 | $EXEC $CONF |
17 | fi |
18 | ;; |
19 | stop) |
20 | if [ ! -f $PIDFILE ] |
21 | then |
22 | echo -n "$PIDFILE does not exist, process is not running\n" |
23 | else |
24 | echo -n "Stopping ...\n" |
25 | echo -n "Sending SHUTDOWN\r\n" | nc localhost $REDISPORT & |
26 | PID=$(cat $PIDFILE) |
27 | while [ -x /proc/${PIDFILE} ] |
28 | do |
29 | echo "Waiting for Redis to shutdown ..." |
30 | sleep 1 |
31 | done |
32 | rm $PIDFILE |
33 | echo "Redis stopped" |
34 | fi |
35 | ;; |
36 | esac |