Linux开机rc.local不自启动执行脚本问题的排查思路及问题解决

Linux开机rc.local不自启动执行脚本问题的排查思路及问题解决

问题

Linux系统中,在rc.local里面配置的启动命令等不能能够在开机的时候进行自启动

问题解决

  • 解决问题排查中最大的麻烦,需要进行reboot重启
    • 查看rc-local的运行状态
      systemctl status rc-local
      在这里插入图片描述
      如果是loaded或者是faild类似,说明启动确实出现了问题
    • 首先查看检查是否还有rc.local的软连接

运行命令ls /etc/rc.d/rc3.d -l 判断,是否有S99local -> /etc/rc.d/rc.local 的软链接,文件名可能不一样,但要有 /etc/rc.d/rc.local的软链接有的是 /etc/rc.local
,反正就是你要运行的rc.local的文件。
如果没有则建立软链接,ln -s /etc/rc.d/rc.local /etc/rc.d/rc3.d/S99local
如果有 /etc/rc.d/rc.local链接,则判断权限是否为可执行,如果不是,可添加权限chmod +x /etc/rc.d/rc.local。

  • Then

    • 其次查看rc.local脚本内容
      文件头为#!/bin/bash
      文件尾为exit或者exit 0
    • 最后进行命令排查(如果systemctl restart rc-local运行卡住,不向下进行,多半是某些命令有问题)

可以在rc.local 中添加这个来检查大概哪个命令出现了问题echo "test" > /opt/test.txt ;因为rc.local 脚本中的命令通常是连续执行的,也就是说,脚本中一个命令的执行完成后才会执行下一个命令。

如果你想让 rc.local 中的命令同时并发执行,你需要对它们进行并发控制:
有一种简单的方法是将每个命令放到后台执行,以便它们可以同时运行。例如,在 rc.local 中使用以下命令可以让每个命令在后台执行:
command1 &
command2 &
command3 &

注意
某些命令比如./start.sh,这个start.sh脚本中使用了tail -f nohup.out,他是会造成阻塞的


这里补充几个问题哈:详情见第二篇吧Linux开机rc.local不自启动执行脚本其他一些问题进行补充说明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值