非系统服务如何随系统启动时自动启动(rc.local加了可执行权限,仍然没有生效)

我们知道,例如我们直接yum 安装的httpd mysqld之类的服务可以直接systemctl enable mysql使服务自动启动,但是,我们应该关心的是但是的那部分

例如nginx,我的话,我一般是选择使用安装包安装

那么我们怎么让nginx自启动呢,我说的是最简单的方法,不是像官网那样,还要写一堆脚本。而我,我的要求只是nginx开机自启,管他重启停止什么的(说到这个,我忽然想起,这个我们好像也可以直接把nginx执行脚本的路径放到系统环境中)

很简单,编辑vi /etc/rc.d/rc.local

然后再最后加上/usr/local/nginx/sbin/nginx(这个是nginx的执行路径,如果你不是安装在这个路径,还需要自己修改为自己安装的路径)

最后reboot,就会发现nginx在开机时就会自动启动了  

 

可能会出现两个意外情况

第一个是,/etc/rc.d/rc.local 没有自动启动(也就是说,添加了相应的服务启动命令,但服务没有开启自启)

解决方法:chmod +x /etc/rc.d/rc.local

第二个是,rc.local添加了执行权限,还是没有自动启动,优先考虑命令是否正确,检查方法是直接复制rc.local里的命令执行,看是否正常运行,我就遇到过几次,是命令写错了,没有进入对应的目录等等

解决法法:没有解决方法,但是有排错方法,那就是查看/var/log/messages 查看启动日志,里面一般都会有启动失败的原因,根据报错就容易解决多了

 

注意:/etc/rc.d/rc.local原来的内容不能删除

posted on 2017-11-16 23:10  标配的小号  阅读(864)  评论(0编辑  收藏  举报

导航