Linux中关于glibc包编译升级导致服务器死机或者linux命令无法使用的情况

服务器上编译glibc2.29版本导致命令不能用
bash 复制代码
Inconsistency detected by ld.so: dl-call-libc-early-init.c: 37: _dl_call_libc_early_init: Assertion `sym != NULL' failed!
下面是造成不可用的原因
bash 复制代码
1.编译完gcc 2.29版本后,开始做映射,以达到能使用最新版本的glibc

wget -4c https://ftp.gnu.org/gnu/glibc/glibc-2.29.tar.gz
tar -zxvf glibc-2.29.tar.gz
cd glibc-2.29
mkdir build_dir
cd build_dir
sudo ../configure --prefix=/opt/glibc

`编译完后 我映射到/opt/glibc目录下`
[root@localhost ld.so.conf.d]# echo "/opt/glibc/lib" | sudo tee -a /etc/ld.so.conf.d/glibc-2.29.conf

[root@localhost etc]# cd /etc/ld.so.conf.d/
[root@localhost ld.so.conf.d]# ls
glibc-2.29.conf  

`更改环境变量`
[root@localhost ld.so.conf.d]# export LD_LIBRARY_PATH=/opt/glibc/lib:$LD_LIBRARY_PATH

`做映射`
[root@localhost ld.so.conf.d]# cat glibc-2.29.conf
/opt/glibc/lib
/opt/glibc-2.29/lib
/opt/glibc-2.29/lib
/opt/glibc/lib

`刷新`
[root@localhost ld.so.conf.d]# ldconfig

`刷新后便不能使用正常的命令了`
[root@localhost app]# ls
Inconsistency detected by ld.so: dl-call-libc-early-init.c: 37: _dl_call_libc_early_init: Assertion `sym != NULL' failed!
恢复可用的方式
bash 复制代码
[root@localhost ld.so.conf.d]# export LD_LIBRARY_PATH=""

[root@localhost ld.so.conf.d]# echo "" > /etc/ld.so.conf.d/glibc-2.29.conf

`刷新`
[root@localhost ld.so.conf.d]# ldconfig

至此: 服务器又可用了
相关推荐
funnycoffee1231 天前
linux系统DNS修改命令
linux·运维·服务器·linux dns
小哈里1 天前
【工具】Linux远程开发核心工具,Git命令缩写与SSH常用命令
linux·git·ssh·工具·远程开发
夏乌_Wx1 天前
深入理解x86内存寻址:从8086实模式到IA-32段页式映射&Linux内核实现
linux
czxyvX1 天前
012-Linux简易Shell编写
linux
清漠2331 天前
win11“网络和Internet“中无“以太网“这个选项解决记录
服务器·网络·数据库
S-码农1 天前
Linux 进程核心知识
linux
努力努力再努力wz1 天前
【Linux网络系列】:TCP 的秩序与策略:揭秘传输层如何从不可靠的网络中构建绝对可靠的通信信道
java·linux·开发语言·数据结构·c++·python·算法
袁小皮皮不皮1 天前
数据通信20-IPv6基础
运维·服务器·网络·网络协议·智能路由器
推理幻觉1 天前
ssh远程连接错误
运维·ssh
醒醒该学习了!1 天前
如何将json文件转成csv文件(python代码实操)
服务器·python·json