Linux开机启动文件rc.local无法执行怎么办
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux开机启动文件rc.local无法执行怎么办相关的知识,希望对你有一定的参考价值。
参考技术A 关于在/etc/rc.local下面加入脚本,开机后无法执行解决方法:1、使用runlevel或者who -r查看服务器的运行级别,根据运行级别查看/etc/rc.d/rcX.d/S99local -> ../rc.local,所指向的rc.local文件位置是否正确。一般是正确的
默认在/etc/rc.d/rc.local下面,/etc/rc.local只是它的一个symlink。
2、理解linux启动的流程,即init脚本先执行,最后再执行rc.local中的命令。
3、注意在rc.local中的脚本尽量使用绝对路径,脚本要加执行权值,脚本使用的服务和环境变量必须先加载,否则脚本会执行错误而退出。
4、在rc.local中的脚本不能执行时,我们可以在脚本中使用set -x打开脚本的调试功能,并且将输出重定向到一个文件中,便于查看出错原因。如/root/echo.sh >> /root/debug.txt
5、要使用普通用户的环境变量需要在rc.local中使用export var=xxx先导出或者使用source /etc/profile,使环境变量生效才能使用,或者是sleep 10 (以s为单位),等其他的必须服务启动后
再执行相关的脚本命令部分。
参考:http://bbs.linuxtone.org/thread-22792-1-1.html
给Debian9 没有rc.local的添加开机自动启动
参考技术A Debian 9 系统默认不带 /etc/rc.local 文件,但是却也没有掉 rc.local 服务,所以我们需要的文件。让 Debian 9 系统可以通过编辑 /etc/rc.loacl 文件给我们服务添加开机自启动。1、添加rc-local.service
以下为一整条命令,一起复制运行
2、新建rc-local文件
以下为一整条命令,一起复制运行
3、添加权限并设置开机自启
chmod +x /etc/rc.local
systemctl enable rc-local
systemctl start rc-local.service
检查状态:
systemctl status rc-local.service
返回 Active:active 信息,则成功。
最后我们就可以在 /etc/rc.loacl 里,添加开机的自启命令什么的了。记住添加在 exit 0 之前。
注意:更改自启脚本后,需要重新运行一下命令已使其生效。
systemctl enable rc-local
systemctl start rc-local.service
这样就完成了。对开机自动启动的配置在debian9上。
以上是关于Linux开机启动文件rc.local无法执行怎么办的主要内容,如果未能解决你的问题,请参考以下文章