glibc
glibc是GNU发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc;
它本身也提供了许多其它一些必要功能服务的实现;
libc.so.6
libc.so.6是一个链接到glibc的软链接;
对glibc的升级其实是对libc.so.6这个库的更改;
libc.so.6删除之后会导致系统很多命令的失效,所以对libc.so.6的更改要小心小心再小心,很容易将系统搞崩溃;
查看libc.so.6的版本
需要知道libc.so.6这个库在哪个位置,一般是/lib、/lib64、/usr/lib、/usr/lib64这四个文件夹下
用strings命令查看版本号;
1 [root@localhost /]# find / -iname libc.so.6
2 /lib/libc.so.6
3 /lib/i686/nosegneg/libc.so.6
4 [root@localhost /]# strings /lib/libc.so.6 | grep GLIBC_
5 GLIBC_2.0
6 GLIBC_2.1
7 GLIBC_2.1.1
8 GLIBC_2.1.2
9 GLIBC_2.1.3
10 GLIBC_2.2
11 GLIBC_2.2.1
12 GLIBC_2.2.2
13 GLIBC_2.2.3
14 GLIBC_2.2.4
15 GLIBC_2.2.6
16 GLIBC_2.3
17 GLIBC_2.3.2
18 GLIBC_2.3.3
19 GLIBC_2.3.4
20 GLIBC_2.4
21 GLIBC_2.5
22 GLIBC_2.6
23 GLIBC_2.7
24 GLIBC_2.8
25 GLIBC_2.9
26 GLIBC_2.10
27 GLIBC_2.11
28 GLIBC_2.12
29 GLIBC_PRIVATE
升级libc.so.6
两种方法升级,一种是通过rpm包升级,另外一种是通过编译glibc,然后将生成的库链接到libc.so.6上,这里只记录通过rpm包对centos6.x的32位系统的升级;
首先需要有这四个rpm包:glibc-2.17-55.el6.i686.rpm、glibc-common-2.17-55.el6.i686.rpm、glibc-devel-2.17-55.el6.i686.rpm、glibc-headers-2.17-55.el6.i686.rpm
然后依次安装这四个包:
rpm -Uvh glibc-2.17-55.el6.i686.rpm
rpm -Uvh glibc-common-2.17-55.el6.i686.rpm
rpm -Uvh glibc-devel-2.17-55.el6.i686.rpm
rpm -Uvh glibc-headers-2.17-55.el6.i686.rpm
这四个包的下载地址:
https://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-i386/glibc-2.17-55.fc20/