1.在redis目录下找到 utils/redis_init_script 复制到 /etc/init.d/redis
[root@localhost /]# cd /usr/local/redis
[root@localhost redis]# cd utils
[root@localhost utils]# ll
将文件复制到/etc/init.d/redis
[root@localhost utils]# cp redis_init_script /etc/init.d/redis
2. 编辑配置文件
[root@localhost utils]# vim /etc/init.d/redis
原配置文件
#!/bin/sh # # Simple Redis init.d script conceived to work on Linux systems # as it does use of the /proc filesystem. ### BEGIN INIT INFO # Provides: redis_6379 # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Redis data structure server # Description: Redis data structure server. See https://redis.io ### END INIT INFO 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
修改后文件:
#!/bin/sh # # chkconfig: 2345 10 90 # description: Start and Stop Redis ### BEGIN INIT INFO # Provides: redis_6379 # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Redis data structure server # Description: Redis data structure server. See https://redis.io ### END INIT INFO REDISPORT=6379 EXEC=/usr/local/redis/bin/redis-server #redis-server所在位置 CLIEXEC=/usr/local/redis/bin/redis-cli #redis-cli所在位置 PIDFILE=/var/run/redis_${REDISPORT}.pid CONF="/usr/local/redis/etc/redis.conf" #redis.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
3. 执行命令
[root@localhost utils]# sudo chmod +x /etc/init.d/redis # 取得权限
[root@localhost utils]# sudo update-rc.d redis defaults # 加载到系统自启动文件
4. 测试命令
[root@localhost utils]# service redis start # 启动redis服务
[root@localhost utils]# redis-cli
5. 其他命令
启动服务: service redis start
停止服务: service redis stop
重启服务: service redis restart