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

至此: 服务器又可用了
相关推荐
Wang's Blog2 分钟前
Java 项目实战: 外卖平台-新增菜品DishDto双表插入与事务控制
服务器·项目开发
云运维笔记3 分钟前
华为设备IP地址配置全攻略
运维·网络·计算机网络·华为
凤年徐7 分钟前
C++ 仿 muduo 高并发服务器:日志模块
linux·服务器
Linux-lucky14 分钟前
39-41-Linux学习之旅之redis缓存基础与NFS基础
linux·运维·mysql·ubuntu
不吃香菜kkk、38 分钟前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
whyutianict_vv1 小时前
云计算运维培训课程技术栈拆解:从 Linux 网络到 AI 推理的五层能力分层
linux·云计算
狂师1 小时前
cloudflared,不需要服务器和公网 IP 的免费内网穿透,一条命令上手
服务器·程序员·开源
pt10431 小时前
面向AI的Cisco UCS X-Series设计-2:Cisco UCS AI规格选型
运维·人工智能
元岳数字人小元1 小时前
无惧网络受限:数字人私有化部署打造离线全域服务能力
运维·人工智能·开源·人机交互·交互
Wang's Blog1 小时前
Java 项目实战: 外卖平台-启用禁用员工账号与Long精度丢失修复
java·服务器