Redis を本番マシン (chkconfig を使用する CentOS) にインストールする手順に従っています。
私が与えられたサンプルスクリプトは、start
実際にそれを開始するために引数を必要としますが、init.dはそうではないようです(引数を渡します)。
実行する必要がある実際のコマンドは です/etc/init.d/redis_6379 start
が、実際に呼び出しているのは/etc/inti.d/redis_6379
であり、単純にuse start or stop as an argument
そのため、サーバーを再起動しても、実際には redis が起動しません。ここで何をすべきですか?
初期設定はこちら
#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
#
# chkconfig: - 85 15
# description: Redis is a persistent key-value database
# processname: redis_6379
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf"
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac