近日测试环境出现lib64文件夹丢失,导致无法启动的问题。
报错如下图,提示找不到/sbin/init以至于无法启动系统进程init。
本文中出现问题的系统是suse 11 sp4,其他Linux发行版丢失重要系统文件处理方法可以类推。
解决问题思路:
1.挂载系统镜像盘
2.启动resuce system,进入救援模式
3.进入字符界面,账号输入root,无需输入密码直接enter
4. 挂载根目录
mount /dev/sda2 /mnt
具体盘符可以通过fdisk -l确认
5. 进入/mnt即可看到根目录下的所有文件
6.查看/sbin/init是否存在
ll /sbin/init
7.发现init进程正常,查看init进程关联插件包状态
ldd /sbin/init
8.确认插件包状态,发现lib64文件夹丢失
ls /lib64
9.通过从其他suse服务器拷贝lib64的方式恢复,然后制作成iso文件挂载上去。
mount /dev/sr0 /mnt/cdrom
10.拷贝lib64到/mnt下,reboot即可恢复
cp /mnt/cdrom/lib64 /mnt
reboot
以上都是自己测试所得,如有错误请指正,谢谢!