rc.local和systemctl顺序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rc.local和systemctl顺序相关的知识,希望对你有一定的参考价值。
您好,关于您问到的rclocal和systemctl的顺序,首先要明确的是,rclocal和systemctl是Linux系统中两种不同的服务管理方式,它们之间的顺序是有区别的。rclocal是Linux系统中一种比较古老的服务管理方式,它的特点是可以在系统启动时执行自定义的脚本,但是它的缺点是不能够很好的控制服务的启动顺序,也不能够很好的管理服务的状态。
而systemctl则是Linux系统中一种比较新的服务管理方式,它的特点是可以更好的控制服务的启动顺序,可以更好的管理服务的状态,而且可以更加方便的管理服务。
因此,在Linux系统中,rclocal和systemctl的顺序应该是systemctl先于rclocal,也就是说,在系统启动时,应该先执行systemctl,然后再执行rclocal。这样可以确保服务的启动顺序正确,也可以更好的管理服务的状态。 参考技术A rc.local和systemctl顺序:rc.local在systemctl前面。首先想到的是把启动容器需执行的脚本放到ENTRYPOINT中执行,看看我们的Dockerfile。进入容器发现systemctl命令是可以运行了,但是env.sh脚本没有执行,查看k8s官方文档发现是docker run传入的命令Dockerfile中的ENTRYPOINT覆盖了。 参考技术B rc.local和systemctl顺序,关于/etc/rc.local不能启动问题,将/etc/profile添加不能启动的一项,即可完成开机自启动。centos7可将比如mysqld redis,nginx编写成nginxd.service,然后用于systemctl控。 参考技术C 我们就能让容器在启动时通过rc.local自动执行脚本获取传入容器的环境变量,同时容器又能使用systemctl了。
centos7 /etc/rc.local需要chmod +x /etc/rc.d/rc.local
Centos 7.0设置/etc/rc.local无效问题解决
安装centos7以后按照以往习惯修改rc.local添加开机启动命令,但重启后发现无效,再次重启发现依然如故
检查系统rc.local服务运行情况
systemctl | grep "rc.local"
# rc-local.service loaded active running /etc/rc.d/rc.local Compatibility
发现运行正常
随后查看rc.local文件
vim /etc/rc.local
发现这么一句话
Please note that you must run \'chmod +x /etc/rc.d/rc.local\' to ensure
由于/etc/rc.local是/etc/rc.d/rc.local的软连接,所以必须确保/etc/rc.local和/etc/rc.d/rc.local都有x权限(可执行)
执行命令
chmod +x /etc/rc.d/rc.local
重启,一切正常,问题解决。
以上是关于rc.local和systemctl顺序的主要内容,如果未能解决你的问题,请参考以下文章
Ubuntu 18.04 rc.local systemd设置