删除Linux的依赖库并进入救援模式恢复

模拟一下依赖库文件被删,并进入救援模式恢复

系统:CentOS7

一、删除mv的依赖库文件

删除/lib64/libc.so.6

[root@centos7 Packages]# which mv
alias mv='mv -i'
    /usr/bin/mv
[root@centos7 Packages]# ldd /usr/bin/mv
    linux-vdso.so.1 =>  (0x00007ffd51946000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f40c2bd9000)
    libacl.so.1 => /lib64/libacl.so.1 (0x00007f40c29d0000)
    libattr.so.1 => /lib64/libattr.so.1 (0x00007f40c27cb000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f40c23fe000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f40c219c000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f40c1f98000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f40c2e00000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f40c1d7c000)
[root@centos7 Packages]# rm -f /lib64/libc.so.6 

删除后mv等很多命令变无法使用

[root@centos7 Packages]# mv /etc/fstab .
mv: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
[root@centos7 Packages]# cp /etc/fstab .
cp: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
[root@centos7 Packages]# poweroff
poweroff: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory

二、强制关机,从光盘引导

0、进BIOS从光盘引导

删除Linux的依赖库并进入救援模式恢复_第1张图片

1、Troubleshooting

删除Linux的依赖库并进入救援模式恢复_第2张图片

2、Recure a CentOS system(救援模式)

删除Linux的依赖库并进入救援模式恢复_第3张图片

3、输入1,回车

删除Linux的依赖库并进入救援模式恢复_第4张图片

4、提示系统被挂载到了/mnt/sysimage,按下回车

删除Linux的依赖库并进入救援模式恢复_第5张图片

5、把光盘的库文件复制过来

使用cp复制库文件到/mnt/sysimage/lib64/;千万别mv,否则光盘的系统又坏了

删除Linux的依赖库并进入救援模式恢复_第6张图片

三、重启后的系统已经正常使用

[root@centos7 ~]# cp /etc/fstab . -a
cp: overwrite ‘./fstab’? y
[root@centos7 ~]# mv fstab /tmp