Linux启动脚本/etc/rc.local 重启不执行问题分析
问题分析:
vim /etc/rc.local ...... touch /var/lock/subsys/local #rc.local的程序已经启动了, 防止重复运行 ...... mount /iso/OracleLinux/OracleLinux-R7-U4-Server-x86_64-dvd.iso /etc/nginx/html/OracleLinux/7.4/
为什么mount这条命令不写到/etc/fstab中,这个问题直接思考下,
因为fstab是启动执行文件,如果mount下的文件被误删,然后重启,mount将无法执行成功,会导致系统进程启动不了,
而/etc/rc.local中可以执行不成功,不会影响系统正常启动
重启后发现df -h下,镜像文件并没有被挂载成功,思考问题:
许多人都是说/etc/rc.local的权限问题,可是我们看一下:
[[email protected]_YUM_seven ~]# ll /etc/rc.local lrwxrwxrwx. 1 root root 13 Aug 7 01:18 /etc/rc.local -> rc.d/rc.local
会发现这只是一个软连接,真实的文件是/etc/rc.d/rc.local所以一直纠结于这个文件是没有任何意义的(PS:这个文件默认的权限就是777)
接着我们查看一下真实的启动文件/etc/rc.d/rc.local:
[[email protected]_YUM_seven ~]# ll /etc/rc.d/rc.local lrw-r--r--. 1 root root 13 Aug 7 01:18 /etc/rc.d/rc.local
发现这个文件没有执行权限,这就是问题所在了,下面就好解决了,为这个文件添加执行权限:
chmod 755 /etc/rc.d/rc.local
755权限不安全,最后选择744权限
再查看一下真实的启动文件/etc/rc.d/rc.local:
[[email protected]_YUM_seven ~]# ll /etc/rc.d/rc.local lrwxr--r--. 1 root root 13 Aug 7 01:18 /etc/rc.d/rc.local
此时已经有了执行权限,到这里就OK啦,重启Linux,发现添加到文件里的脚本已执行:
---------------------------------------------------------------------------------------------------------------------
如果解决了你的问题,如果你觉得还蛮好的,
可以打点小费,自愿,几分几毛也是爱,好东西还是要分享的,
你也可以领走一个支付宝红包,扫码领红包,使用支付宝可以红包抵现,每天都可以扫,真实有效