centos开机自启动脚本&死循环无法开机解决

问题:

想写个自启动脚本偷个懒,发现重启之后没有进程,想到可能是脚本里程序执行太快,就写了个死循环测试下,然后偷懒不干了。

设置开机自启动:

# 编写一个简单的脚本,刚开始没执行,测试用的
echo "echo 'this is a test' >> /opt/file.txt">> test.sh
chmod +x test.sh

# 将脚本添加到/etc/rc.d/rc.local
pwd
/home/mztt/test.sh

echo "/home/mztt/test.sh" >> /etc/rc.d/rc.local

#下面这几句是文件里注释内容提醒要给它执行权限
# 这个文件是为了兼容性的问题而添加的。
#强烈建议创建自己的systemd服务或udev规则来在开机时运行脚本而不是使用这个文件。
#与以前的版本引导时的并行执行相比较,这个脚本将不会在其他所有的服务后执行。
#请记住,你必须执行“chmod +x /etc/rc.d/rc.local”来确保确保这个脚本在引导时执行。
chmod +x /etc/rc.d/rc.local
reboot
#重启之后查看 /opt下有file.txt文件 ok 确实执行了

想着没问题,我没在/etc/rc.d/rc.local里面加,而这里面执行的脚本,会在系统启动之后运行,逛了百度和goole,找到解决办法。

解决:

  1. 重启系统
  2. 在内核界面按e 进入编辑
  3. 在倒数第二行有个ro 将ro 修改为 rw init=/sysroot/bin/sh
  4. ctrl + x 保存(这地方别按esc或重启,修改会重置) 进入当用户模式
  5. 在单用户终端执行 chroot /sysroot 提权
  6. 最后,将/etc/rc.d/rc.local的错误文件去掉,reboot就ok了。

root密码丢失,处理方法类似。

    原文作者:mztt3010
    原文地址: https://blog.csdn.net/qq_42898087/article/details/85330957
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞