解决CentOS7.8.2003 rc.local 不生效问题
最近重新配置家里的NAS下载机时发现在CentOS7.8.2003操作系统下将服务启动命令写到rc.local后没有生效。
后来经过一番查阅发现从CentOS7.0开始,/etc/rc.d/rc.local文件的初始权限变成了644,并且rc-local.service服务的状态是disabled状态。
怎么办呢?
很简单!为/etc/rc.d/rc.local文件赋权为744:
初始状态如下:
# ls -l /etc/rc.d/rc/local
total 4
-rw-r--r--. 1 root root 834 Oct 31 09:25 rc.local
赋权操作:
# chmod +x /etc/rc.d/rc.local
# ls -l /etc/rc.d/rc/local
total 4
-rwxr--r--. 1 root root 834 Oct 31 09:25 rc.local
配置完毕!
另外还有一个比较重要的内容,就是在rc-local.service服务文件中,一定要添加[Install]段:
[Install]
WantedBy=multi-user.target
否则,启动或者配置开机启动,都会提示错误。
当然有的时候也可能不成功,比如:
/etc/rc.d/rc.local 文件中的内容格式不正确:
开头少了#!/bin/bash,也是执行不成功的,会提示你格式不对。
此外还可能是没有启动此项服务:
# systemctl list-units --type=service #来查看一下所有的开启启动项目里面有没有这个rc-local这个服务。
# systemctl status rc-local.service #来查看一下当前是怎么个状态
然后:
#systemctl enable rc-local.service
#systemctl start rc-local.service #手工添加下开机启动或者手工起一下看报错信息。
另外:服务的启动文件是存放在了:/lib/systemd/system/
目录下面,如果不记得这个服务的全称可以来这个目录下面看。
参考文章:http://www.51niux.com/?id=134
参考文章:https://www.cnblogs.com/xjz00/p/7729405.html
Comments are currently closed.