GLIBC修复笔记(文末送书)

简介: GLIBC修复笔记(文末送书)

背景

公司环境有台机器硬盘故障,需要安装megacli工具进系统查看raid信息,在ubuntu20.04安装megacli解决依赖过程中失误将高版本的libtinfo包装系统上了,导致系统报glibc对应的版本没有找到,系统实际glibc的版本是2.31。



解决办法

如果系统的ssh没有断开,可以将原来版本的libtinfo文件删除,并重新软链接

cd /lib/x86_64-linux-gnu/
rm -rf libtinfo.so.6
ln -s libtinfo.so.6.2 libtinfo.so.6

但是很遗憾,ssh和接显示器都登录不到系统上了,单用户也进不去,安装的ubuntu server 20.04也没有live cd,不过好在ubuntu 20.04 desktop版本用的核心库版本和server是一样的,可以使用ubuntu 20.04 desktop做live CD

使用ubuntu 20.04 desktop 制作live CD修复

插入制作好的启动盘,选择try ubuntu without installing



进入liveCD之后切换到root用户,将硬盘上的文件系统挂载到/mnt目录上


sudo -i
mount /dev/mapper/ubuntu--vg-ubuntu--lv /mnt
cd /mnt/lib/x86_64-linux-gnu



将原来版本的libtinfo文件删除,并重新软链接到6.2版本上去

rm -rf libtinfo.so.6
ln -s libtinfo.so.6.2 libtinfo.so.6

之后切换根目录为/mnt,使用绝对路径重新软链接一次

chroot /mnt
cd /lib/x86_64-linux-gnu
rm -rf libtinfo.so.6
ln -s /lib/x86_64-linux-gnu/libtinfo.so.6.2 /lib/x86_64-linux-gnu/libtinfo.so.6
exit
reboot




重启系统问题解决

以上是由于安装依赖版本问题导致glibc版本报错的解决办法和思路,如果各位还想了解更多关于Linux的知识,能看到这篇文章那可真是太巧了,运维开发故事今天有福利相送,抽四本《Linux从入门到应用部署实战》纸质书送给一直以来关注运维开发故事的朋友,书籍由北京理工大学出版社赞助,在此感谢北京理工大学出版社。

抽奖助手

linux从入门到应用部署实战

小程序



相关文章
|
Java
全网首发:OpenJDK如何支持字体的kerning及BUG号
全网首发:OpenJDK如何支持字体的kerning及BUG号
99 0
|
Oracle Java 关系型数据库
阿里《Java开发手册》中的 1 个bug!(上)
阿里《Java开发手册》中的 1 个bug!
321 0
阿里《Java开发手册》中的 1 个bug!(上)
|
Java Spring
阿里《Java开发手册》中的 1 个bug!(下)
阿里《Java开发手册》中的 1 个bug!
201 0
|
网络协议 关系型数据库 MySQL
记一次FreeBSD的冒险升级修复之旅
一天服务器使用FB 10.4已经很长时间了,因为Let’s Encrypt从2019年12月1日开始,ACME v2启用,要求certbot最低版本是0.29.0,而10.4最高只支持到0.27.1,头脑一发热,就准备升级到11.
1227 0