Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例
Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.删除"/sbin/init"文件模拟故障
[root@yinzhengjie ~]# which init /sbin/init [root@yinzhengjie ~]# [root@yinzhengjie ~]# file /sbin/init /sbin/init: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped [root@yinzhengjie ~]# [root@yinzhengjie ~]# rpm -qf /sbin/init upstart-0.6.5-17.el6.x86_64 [root@yinzhengjie ~]# [root@yinzhengjie ~]# ll /sbin/init -rwxr-xr-x. 1 root root 150352 Jun 19 2018 /sbin/init [root@yinzhengjie ~]# [root@yinzhengjie ~]# ll -h /sbin/init -rwxr-xr-x. 1 root root 147K Jun 19 2018 /sbin/init [root@yinzhengjie ~]# [root@yinzhengjie ~]# mv /sbin/init /root/ #我们将"/sbin/init"文件移动到"/root"目录,以模拟删除了"/sbin/init"文件 [root@yinzhengjie ~]# [root@yinzhengjie ~]# ll total 148 -rwxr-xr-x. 1 root root 150352 Jun 19 2018 init [root@yinzhengjie ~]# [root@yinzhengjie ~]# reboot #重启操作系统后发现无法正常启动了,一直卡在如下所示的图形界面。 Broadcast message from root@yinzhengjie (/dev/pts/0) at 20:44 ... The system is going down for reboot NOW! [root@yinzhengjie ~]#
二.故障恢复实战
1>.如下图所示,根据提示按字母"a"修改内核参数
2>.指定系统内核启动时指定启动进程为"/bin/bash",默认使用"/sbin/init"来启动内核
3>.可以基于http协议将网络备份好的"/sbin/init"文件下载到本地(若系统环境是只读的化需要使用mount命令重新挂载一下)
4>.上图中别忘记输入"sync"命令同步一下,然后直接断电重启操作系统即可(上图中无法使用"init 6"或者"reboot"命令)
当你的才华还撑不起你的野心的时候,你就应该静下心来学习。当你的能力还驾驭不了你的目标的时候,你就应该沉下心来历练。问问自己,想要怎样的人生。
欢迎交流学习技术交流,个人微信: "JasonYin2020"(添加时请备注来源及意图备注)
作者: 尹正杰, 博客: https://www.cnblogs.com/yinzhengjie/p/11963829.html