1.编写shell脚本,如在/opt目录下编写redisStart.sh,内容如下
#!/bin/sh
cd /usr/local/redis/bin/
pwd
./redis-server redis.conf
其中redis安装在/usr/local/redis目录下,redis.conf是Redis的配置文件,具体操作时需要改成redis.conf的绝对路径
给redisStart.sh增加执行权限
chmod +x redisStart.sh
2.在/etc/init.d目录下随便创建个文件,如auto,将自启动命令写入到auto中,如下:
#!/bin/bash
#chkconfig: 2345 80 90
#description:autoStart
/opt/redisStart.sh
第一行,告诉系统使用的shell,所有的shell脚本都是这样。
第二行,chkconfig后面有三个参数2345,80和90告诉chkconfig程序,其中2345是系统的启动级别,一般来说都是016不会设置,都是设置成2345,具体获取系统的启动级别,可用:sudo runlevel获取,80 和 90是告诉系统在/etc/rc.d/目录下的rc2.d~rc6.d目录下分别创建S80auto和K90的文件链接,S代表启动的时候执行,K代表关闭的时候执行
注意上面的三行中:第二、第三行是必须的,否则在运行chkconfig --add auto时,会报错:服务 *.sh 不支持 chkconfig
3.添加自启动:chkconfig --add auto,该命令执行完后没有信息输出即为成功
查看该服务是否注册上了:chkconfig --list
可以看到2345的级别都是启动的,成功。
4.重启机器:reboot
注:文章仅为了记录碰上的问题,有什么疑问的可留言交流