sweetstar86
sweetstar86

Reputation: 96

After updating glibc: Segmentation fault (core dumped)

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

yum update glibc

I found that my "yum" command as well as my "python" command will throw error as follows: enter image description here

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: enter image description here

Additionally, I have tried to print my libz config using

ldconfig -v|grep libz

The result will be as follows: enter image description here

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

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

Upvotes: 3

Views: 6043

Answers (1)

Florian Weimer
Florian Weimer

Reputation: 33747

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.

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.

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.

Upvotes: 2

Related Questions