记一次CentOS5.7更新glibc导致libc.so.6失效,系统无法启动
以下是错误示范,错误过程还原,请勿模仿!!!
wkhtmltopdf 启动,提示/lib64/libc.so.6版本过低
$ ./wkhtmltopdf http:www.baidu.com 1.pdf
./wkhtmltopdf: /lib64/libc.so.6: version `GLIBC_2.9' not found (required by ./wkhtmltopdf)
./wkhtmltopdf: /lib64/libc.so.6: version `GLIBC_2.10' not found (required by ./wkhtmltopdf)
./wkhtmltopdf: /lib64/libc.so.6: version `GLIBC_2.7' not found (required by ./wkhtmltopdf)
查看系统glibc版本,发现最高是2.5,需要升级到2.10
$ strings /lib64/libc.so.6 |grep GLIBC_
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_PRIVATE
当时并不清楚glibc的重要性,看是版本过低,就想着升级呗
下载了个glibc2.10版本
$ mkdir build // 在glibc-2.14目录下建立build文件夹
$ cd build // 进入build目录
$ ../configure --prefix=/usr/local/glibc // 配置glibc并设置当前glibc-2.14安装目录
$ make && make install // 编译安装glibc-2.14库
安装完成后, 建立软链指向glibc-2.10, 执行如下命令:
$ rm -rf /lib64/libc.so.6 // 先删除先前的libc.so.6软链
$ ln -s /usr/local/glibc-2.10/lib/libc-2.10.1.so /lib64/libc.so.6
此时系统报错sgment fault,通过ldconfig重新恢复,libc.so.6重新指向libc-2.5.so,我的升级目的没有达到,岂能罢休?看到/lib64下有libc-2.5.so,
于是“灵机一动”,把libc-2.10.1.so也复制到/lib64下,$ ln -s /lib64/libc-2.10.1.so /lib64/libc.so.6
这下成功将libc.so.6指向了libc-2.10.1.so了
可是悲催的是系统各种命令都不能再使用:
/bin/ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
ssh远程连接也中断了,无法再连接,本机上无法打开终端。无可奈何,我做了一个更加可怕的决定,重启!
于是乎,CentOS 5.11,GG!
以上是错误示范,错误过程还原,请勿模仿!!!
事情搞完了,系统起不来了,可是里面的数据不能丢!咋办啊?
不敢乱动那个硬盘,找了个其他硬盘,装上了相同的CentOS 5.11系统,将原硬盘挂载上去,赶紧把数据先备份下来。
重新将libc.so.6指向libc-2.5.so:
[root@localhost lib64]#ln -s libc-2.5.so libc.so.6
卸下替用的硬盘,原硬盘的系统恢复正常。CentOS 5.11 正常跑了
记一次CentOS5.7更新glibc导致libc.so.6失效,系统无法启动的更多相关文章
- 记一次mysql事务未提交导致锁未释放的问题
记一次mysql事务未提交导致锁未释放的问题 ## 查看未提交的事务(3秒内未操作的事务) SELECT p.ID AS conn_id, P.USER AS login_user, P.HOST A ...
- 对于vue项目更新迭代导致上传至服务器后出现Loading chunk {n} failed和Unexpected token <的解决方式
相信大家对于vue项目的维护与更新中会遇见很多问题,其中有两种情况最为常见. 一种是Loading chunk {n} failed,这种情况出现的原因是vue页面更新上传至服务器后,由于vue默认打 ...
- [svc]mount命令及解决因/etc/fstab错误导致系统不能启动故障
mount命令-手动挂载设备 格式: mount [options] [-t fstype] [-o option] 设备 挂载点 mount -n -o remount,rw / - Mount t ...
- 痞子衡嵌入式:FlexSPI复位方式不当会导致i.MXRT系列下OTFAD加密启动失败
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是FlexSPI复位方式不当会导致i.MXRT系列下OTFAD加密启动失败问题. 本篇是<系统时钟配置不当会导致i.MXRT1xxx ...
- Glibc 与 libc 的区别和联系
转http://blog.163.com/dragon_sjl@126/blog/static/100473339201107101517380/ 1.gcc(gnu collect compiler ...
- linux误删文件导致系统无法启动
因虚拟机RedHat误删了/etc/inittab文件导致系统无法启动启动系统提示enter runlevel尝试输入0-5都不好使.因为实验环境直接忽略了错误,重新搭建了虚拟机. 如果想尝试修复,可 ...
- 超链接导致window.location.href失效的解决办法
通常我们采用 window.location.href 执行页面间的跳转,比如下面的语句 window.location.href = 'https://www.baidu.com/'; 一般执行上面 ...
- 痞子衡嵌入式:系统时钟配置不当会导致i.MXRT1xxx系列下OTFAD加密启动失败
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是系统时钟配置不当会导致i.MXRT1xxx系列下OTFAD加密启动失败问题. 我们知道,i.MXRT1xxx家族早期型号(RT1050/ ...
- CTSC2016&&APIO2016滚粗记&&酱油记&&游记<del>(持续更新)</del>
挖一波坑 #include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs. ...
随机推荐
- 适配ipad Pro
买了个新款ipad pro 11寸的,发现我们的ipad项目. 上下左右都有黑边 使用info.plist设置启动图,不用asset和launch storyboard 图片用如下格式命名,拖到项目中 ...
- 转:web.xml 配置中classpath: 与classpath*:的区别
原文链接:web.xml 配置中classpath: 与classpath*:的区别 引用自:http://blog.csdn.net/wxwzy738/article/details/1698393 ...
- jquery基础学习之样式篇(一)
一.安装与使用 官网下载,然后引入 <script src="js/jquery-3.3.1.js"></script>,这是生产版本,开发版本替换成min ...
- Java+selenium 如何操作日历控件
场景:一般的日期控件都是input标签下弹出来的,如果使用webdriver 去设置日期, 1. 定位到该input 2. 使用sendKeys 方法 但是,有的日期控件是readonly的 ,比如神 ...
- HashMap如何做循环遍历
1.TestCase:
- collection my favoriate websites
802.1x认证客户端linux版安装 http://blog.csdn.net/StarChunli/article/details/50918121 在U盘上安装kali linux http:/ ...
- 第 7 章 Data 类型
目录 第 7 章 Data 类型 一.创建方式 二.转时间戳 其他 第 7 章 Data 类型 @(es5) 参考了: 阮一峰javascript的标准.<javascript高级教程> ...
- Spring 注解 @Scheduled(cron = "0 0/10 * * * ? ") 动态改变时间
import java.util.Date; import java.util.concurrent.Executor; import java.util.concurrent.Executors; ...
- 20171228 C#值类型和引用类型
public class RefPoint //定义的引用类型 { public int x; public RefPoint(int x) { this.x = x; } } public stru ...
- Redis基本管理
Redis介绍 开源 内存存储 数据结构存储 1.字符串(数字) 2.列表 3.hash 4.set 集合 5.sorted set 有序集合 用途 :数据库 缓存 消息队 ...