更新glibc之后:分段错误(核心已转储)

编程入门 行业动态 更新时间:2024-10-28 20:17:15
本文介绍了更新glibc之后:分段错误(核心已转储)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我一直在使用centos 6.5.然后,我用yum更新了我的glibc.

I've been using centos 6.5. And after I used the yum to update my glibc.

yum update glibc

我发现我的"yum"命令以及我的"python"命令将引发以下错误:

I found that my "yum" command as well as my "python" command will throw error as follows:

我已经厌倦了其他shell命令,例如:ls ll ln rm mv等.这些命令正常工作.当我检查我的libc链接时,结果如下:

I' ve tired other shell commands like: ls ll ln rm mv etc. Those commands are working normally. When I check my libc link, the result are as follows:

此外,我尝试使用来打印我的libz配置

Additionally, I have tried to print my libz config using

ldconfig -v|grep libz

结果将如下所示:

我想知道为什么会发生这种情况.我真的需要你们的帮助来解决这个问题.

I was wondering why this may happen. And I really need your guys help to solve this problem.

此外,我的'gdb'也将引发此错误.当我使用"dmesg"命令时,收到如下消息:

What's more, my 'gdb' will throw this error too. When I use 'dmesg' command, I got the message as follows:

推荐答案

CentOS 6基于glibc 2.12.符号链接指向glibc 2.16,因此您尝试安装不属于操作系统的glibc软件包.这损坏了系统,可能无法修复.您将需要重新安装它并从备份中恢复数据.

CentOS 6 is based on glibc 2.12. The symbolic link points to glibc 2.16, so you tried to install a glibc package which is not part of the operating system. This has corrupted the system, likely beyond repair. You will jave to reinstall it and restore the data from backup.

避免重新安装是一项复杂的操作.您需要确保仍然具有glibc 2.12的所有文件(名称以-2.12.so结尾).然后,您可以通过一次rm调用删除glibc 2.16文件(以-2.16.so结尾的文件). (必须执行一次rm调用,因为一旦开始删除glibc 2.16文件,rm将停止工作.)之后,您可以运行ldconfig来获取正确的符号链接.

Avoid reinstallation is a complex operation. You need to make sure that you still have all the files for glibc 2.12 (with names ending in -2.12.so). Then you can delete the glibc 2.16 files (those ending in -2.16.so), with a single rm invocation. (The single rm invocation is necessary because rm will stop working once you start deleting the glibc 2.16 files.) After that, you can run ldconfig to get back the right symbolic links.

您也可以尝试使用sln或ln -sf手动修复符号链接,但是您必须一次删除glibc 2.16文件.在执行后者之前,每次ldconfig调用都将带回glibc 2.16符号链接.并且ldconfig是在软件包安装过程中自动运行的,因此这很容易偶然发生.

You could also try to use sln or ln -sf to fix the symbolic links manually, but you will have to remove the glibc 2.16 files at one point. Until you do the latter, every ldconfig invocation will bring back the glibc 2.16 symbolic links. And ldconfig is run automatically during package installation, so this can happen quite easily by accident.

更多推荐

更新glibc之后:分段错误(核心已转储)

本文发布于:2023-11-24 15:30:16,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1625789.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:核心   错误   glibc   已转储

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!