[实践OK]centos 7 /etc/rc.local 开机不执行的问题,CentOS7下面的/etc/rc.local可执行和其指向的软链接/etc/rc.d/rc.local并无执行权限。 不指定

jackxiang 2018-3-14 20:11 | |
CentOS7下面的/etc/rc.local可执行和其指向的软链接/etc/rc.d/rc.local并无执行权限,需要加上可执行权限,开机才会真执行:
ll /etc/rc.local  
lrwxrwxrwx. 1 root root 13 3月  10 18:57 /etc/rc.local -> rc.d/rc.local

ll -lart /etc/rc.d/rc.local
-rw-r--r--. 1 root root 525 3月  13 22:54 /etc/rc.d/rc.local


chmod +x /etc/rc.d/rc.local
chmod +x /etc/rc.local
注意:这儿+ x,是指所有用户均加上可执行权限,如:u  g o(user,group,other a+x一个意思。)
u 表示“用户(user),g 表示“同组(group)用户”,o 表示“其他(others)用户”,a 表示“所有(all)用户”。它是系统默认值。
参考:https://zhidao.baidu.com/question/1835078387588475620.html



摘录:
最近发现centos7 的/etc/rc.local不会开机执行,于是认真看了下/etc/rc.local文件内容的就发现了问题的原因了

#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In constrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.
翻译:

#这个文件是为了兼容性的问题而添加的。
#
#强烈建议创建自己的systemd服务或udev规则来在开机时运行脚本而不是使用这个文件。
#
#与以前的版本引导时的并行执行相比较,这个脚本将不会在其他所有的服务后执行。
#
#请记住,你必须执行“chmod +x /etc/rc.d/rc.local”来确保确保这个脚本在引导时执行。
于是我有确认了下/etc/rc.local的权限

[root@localhost ~]# ll /etc/rc.local
lrwxrwxrwx. 1 root root 13 8月  12 06:09 /etc/rc.local -> rc.d/rc.local

[root@localhost ~]# ll /etc/rc.d/rc.local
-rw-r--r--. 1 root root 477 6月  10 13:35 /etc/rc.d/rc.local
/etc/rc.d/rc.local没有执行权限,于是按说明的内容执行

chmod +x /etc/rc.d/rc.local
重启后发现/etc/rc.local能够执行了。

看样子是版本的变迁,/etc/rc.local /etc/rc.d/rc.local正在弃用的路上。

来自: http://blog.51cto.com/soarwilldo/1549656

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/9674/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2018-5-3 10:45
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]