首页 > 编程知识 正文

错误1053解决方法(4206错误解决方案)

时间:2023-05-04 14:35:26 阅读:95538 作者:470

系统: Alibaba云ECS CentOS6.5当前GLIBC版本: 2.12glibc版本:准备升级到2.19

一、GLIBC介绍

glibc是由GNU发行的libc库,即c运行时库。 glibc是linux系统最底层的api,大多数其他运行时库依赖于glibc。 glibc不仅封装了linux操作系统提供的系统服务,还提供了许多其他必需的功能服务的实现。 内核要实现一个功能,需要很长时间才能使用glibc。 由于glibc和内核没有开发在一起,glibc需要与不同版本的内核兼容,内核也需要与不同版本的glibc兼容,双方都承担着历史负担。

GLIBC官网: http://WWW.GNU.org /软件GLIBC

二、升级GLIBC的理由

目前需要在ECS上安装nginx。 提供的版本是1.15.9。 由于使用的nginx已经被编译过,所以编译步骤不会报告错误,而是暂时忽略。 nginx的具体编译参数如下。

builtbygcc4.8. 520150623 (红帽4.8.5-36 ) )绿铜) )。

一体机1.1.1 b 26 feb 2019

ts sni支持启用

配置组件3360-- prefix=/root/MySQL-installer/Nginx-1.15.x /部署/Nginx-1.15.9-STD--用户透明/透明- 8.43--带透明=/根/MySQL-1 zlib-1.2.11-- -带透明=/根/MySQL-inssl -带透明OpenSSL-1.1.1 B-- with-OpenSSL-opt=enable-tlS1 _3--with-http _ SSL _ module-with-http _ stub _1e p _ gzip _ static _ module-_ secure _ link _ module-- with-http _ slice _ module-- with-http _ v2_ module

在nginx的sbin目录中,经过验证后发现:

当时我觉得GLIBC库的版本太低了,自己开始编译GLIBC2.19版本。 不解释编译过程。

三、问题发生的原因

1,编译完成后,需要在系统中指定库文件的路径。 因此,写下/etc/ld.so.conf.d/glibc.conf (自己手动创建的文件)、检入文件的路径。

/opt/glibc-2.19/lib

使用2,ldconfig -v暂时有效加载库文件

2、将库文件的/opt/glibc-2.19/lib/libc.so.6软件连接到系统识别的路径上:

LN-SV/OPT/Glibc-2.19/LIB/Libc.SO.6/LIB 64/Libc.SO.6

完成此步骤后,无论实际执行的命令如何,都会显示段错误。

分段故障

四、解决方案

如果是ssh登录,则此时不能退出。 否则,无论如何也无法登录。 ldconfig是动态链接库管理命令,具有-l参数。 文档中描述如下。

--lmanuallylinkindividuallibraries (手动连接一个库。

在其他配置相同的计算机上,查看/lib64/libc.so.6

发现libc.so.6实际上是一个软连接文件。 此时,需要手动使用ldconfig链接原始的so文件

此时,系统将恢复到原始状态,不报告段错误等问题。

总结: GLIBC是系统的基础依赖文件。 请不要自己随意编译。 如果真的要升级,请使用yum进行升级,不要自己编译。 这是非常困难的,因为编译版本和内核版本之间不一定兼容。

欢迎工作5年的Java工程师朋友们参加Java程序员开发: 721575865

在组内提供免费的Java体系结构学习资料(高可用性、高并发、高性能和分布式、Jvm性能调优、Spring源代码、MyBatis、Netty、Redis、Kafka、Mysql、Mysql

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。