Liunx GLIBC版本修改时libc.so.6 被误删修复
Liunx应用编译,需要降低GLIBC版本编译运行,但libc.so.6出现异常,shell 命令均不支持;
/bin/ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
但这时shell未断开连接仍可进入,只是命令不支持;幸好之前修改时,有备份 libc.so.6.bak;
方法1:(推荐)
调用命令:
# LD_PRELOAD=/lib/libc.so.6.bak rm libc.so.6
# LD_PRELOAD=/lib/libc.so.6.bak cp libc.so.6.bak libc.so.6, 成功修复;
当然,如果libc.so.6是软连接,则命令修改为 ln -s,如
# LD_PRELOAD=/lib/libc-2.31.so.bak ln -s /lib/libc-2.31.so.bak libc.so.6
Linux调用so的库文件时,搜素路径为:当前路径 -》系统lib目录。
但设置LD_PRELOAD后,搜素路径为: LD_PRELOAD -》当前路径,-》系统lib目录
方法2:
# ldconfig -l -v /lib/libc-2.31.so.bak
libc.so.6 -> libc-2.31.so.bak (changed)
如果已断开了shell连接 或者是libc.so彻底被删除了,会比较麻烦,自行搜索!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!