今天要在一台测试服务器上装Oracle,用yum安装依赖包老是提示glibc版本冲突,原来已经安装的版本比较高,于是手欠直接rpm -e 把glibc和glibc-common给删除了,然后运维直接来找我说服务器登录不上去了,然后我这边也一直在报错:

-bash: /usr/bin/ls: /lib64/ld-linux-x86-64.so.2: bad ELF interpreter: No such file or directory

不管执行什么操作都是报上面的错误,心想这下完蛋了,是不是需要重装服务器呀。请教了SA,说是可以使用光盘启动进入恢复模式来进行修复。

思路就是把缺少的文件给复制回去。

进入修复模式

6c513aaf1915e8fddf0785cb4e66d519.png

00c22638f295ccdf62035a472b39c17c.png

把缺少的文件拷回到系统中

ebabcb4ac5095144414fa4f3157cec6c.png

使用chroot切换到原系统

a6ff4feee876af498a47aa6928f09dd0.png

发现还是报库文件后缺失,后来经过重启后发现系统仍然启动不了

后来想到丢失的文件应该不只是只有报出来的那些,还有很多不知道的包也丢失了。

上网查了一个找到一篇介绍恢复方法的博客,第一种就是我上面用的这种方法,他那也说是不能恢复,然后第二种方法是重新安装glibc软件包,于是开始第二次尝试:

68e1950d782b929cc84e3f00f2f2da92.png

重启后系统恢复正常

557bb7dc558038b2b96e7160a8c6ec71.png

博客中还有第三种恢复的方法,这里没有尝试,感兴趣的同学可以做尝试。

参考:http://chocchen.blog.51cto.com/5099327/1329888