记一次glibc导致的系统崩溃

记一次glibc导致的系统崩溃

安装了某个软件,提示缺少glibc2.29,于是下载源码编译安装,根据网上非权威不可靠博文,使用--xxx=/usr选项导致系统的关键库文件链接被覆盖,所有依赖glibc的命令均无法使用。

ldd `which cat`
	linux-vdso.so.1 (0x00007ffec49a0000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f3e56e67000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f3e57461000)

可以看到很多基本命令(除了shell内置命令外)都是依赖libc.so.6这个文件的

大多数程序都是动态链接的。 当操作系统加载一个动态链接的应用程序时,它必须找到并加载它执行该应用程序所依赖的动态库。 在linux系统上,这份工作由ld-linux.so.2处理。即需要用到动态库的命令都需要/lib64/ld-linux-x86-64.so.2

解决方案

准备一个live boot系统安装盘,进入try ubuntu without install

挂载本地要修复的系统所在硬盘,进入并修改链接文件

(友情提醒,如果能正常挂载,此时对于关键业务要先备份文件)

ln -sf /lib/x86_64-linux-gnu/ld-2.27.so /lib64/ld-linux-x86-64.so.2
ln -sf /lib/x86_64-linux-gnu
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值