TEST:
测试目的:
通过删除或者破坏系统动态库,来练习系统恢复。
构建测试环境:
环境:CentOS7
动态库:/lib64/libc.so.6
删除动态库操作:
[root@CentOS74 ~]#ldd /bin/ls
linux-vdso.so.1 => (0x00007ffcd0cba000) libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f318af10000) libcap.so.2 => /lib64/libcap.so.2 (0x00007f318ad0b000) libacl.so.1 => /lib64/libacl.so.1 (0x00007f318ab01000) libc.so.6 => /lib64/libc.so.6 (0x00007f318a73e000) libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f318a4dc000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f318a2d7000) /lib64/ld-linux-x86-64.so.2 (0x00005561e0cc9000) libattr.so.1 => /lib64/libattr.so.1 (0x00007f318a0d2000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f3189eb6000) [root@CentOS74 ~]#ldd /bin/mv linux-vdso.so.1 => (0x00007ffdf51ee000) libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f32c1377000) libacl.so.1 => /lib64/libacl.so.1 (0x00007f32c116e000) libattr.so.1 => /lib64/libattr.so.1 (0x00007f32c0f68000) libc.so.6 => /lib64/libc.so.6 (0x00007f32c0ba5000) libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f32c0943000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f32c073e000) /lib64/ld-linux-x86-64.so.2 (0x000055589efec000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f32c0522000) [root@CentOS74 ~]#ll /lib64/libc.so.6 lrwxrwxrwx. 1 root root 12 Apr 19 17:42 /lib64/libc.so.6 -> libc-2.17.so [root@CentOS74 ~]#mv /lib64/libc.so.6 /root/ [root@CentOS74 ~]#ll /lib64/libc.so.6 ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory [root@CentOS74 ~]#ls ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory [root@CentOS74 ~]#mv mv: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory [root@CentOS74 ~]#cp cp: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory [root@CentOS74 ~]# |
现象:
系统报出:“
ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory”错误
动态库文件丢失
修复:
从救援模式下,修复。
step:
1、挂载系统镜像文件,重启机器,按“ESC”,进入Boot Menu,选择“CD-ROM Drive”,进入救援模式
备注:”Rescue a CentOS System”:从光盘中启用一个简化的系统,与本地操作系统无关
2、查看原系统分区挂载情况
3、恢复动态库
a、将移动的动态库文件,移动回去
b、查看库文件属性,库文件是一个软链接文件,可以通过重新建立软链接
备注:
注意:系统软链接是使用相对路径,
创建软链接的方式,进入软链接文件的目录下,以当前目录为相对目录,创建软链接。
c、还有一种情况就是文件丢失,需要先找到软件包,解压找到丢失的软件包,然后拷贝到对应的位置。
4、重启机器,系统OK
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96640
评论列表(1条)
啦啦啦