误删除libc.so.6 恢复

修复系统方式一:

1.搞到系统光盘或者U盘
2.开机设置bios由光盘或U盘启动
3.选择 troubleshooting,rescue a centos system
4.进入终端,系统提示说 原系统的目录被mount到/mnt/sysimage下,于是进入/mnt/sysimage,此时就可以使用ln -s命令创建软链接了。
5.重启,搞定

 

修复系统方式二:

    这种做法要求在删除libc.so.6之后没有关闭shell或者ssh连接的情况下紧急处理。按照教程libc.so.6: cannot open shared object file报错处理所说,执行

1. 先删除连接 :
# cd /lib64
2. 建立新连接 :
# LD_PRELOAD=/usr/local/glibc-2.17/libc-2.17.so ln -s /usr/local/glibc-2.17/libc-2.17.so /lib64/libc.so.6
#注意 LD_PRELOAD和后面的ln -s在同一行
 
LD_PRELOAD的解决原理是,linux调用so库文件时,先搜索当前路径,然后是系统库目录,提供LD_PRELOAD系统变量可以改变这个顺序,改变后的搜索顺序为 LD_PRELOAD, 当前路径, 系统库目录 
    于是,使用LD_PRELOAD指向正常的glibc库文件,然后执行ln等命令,就可以正常执行,执行成功之后, libc.so.6 就又存在了。
 

 

posted @   邱明成  阅读(1760)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
历史上的今天:
2017-07-08 Guava学习笔记:Optional优雅的使用null
点击右上角即可分享
微信分享提示