glibc是gnu发布的libc库,即c运行库,glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。很多linux的基本命令,比如ls,mv,cp, rm, ll,ln等,都得依赖于它,如果操作错误或者升级失败会导致系统命令不能使用,严重的造成系统退出后无法重新进入,所以操作时候需要慎重,升级之前保存好重要资料。

写这篇笔记的目的其实是我在centos 下想要安装chrome 浏览器时,有报错说glibc (2.14-2.16) 是安装chrome的依赖,所以才打算把自己的测试机升级下glibc动态库。

下面开始正文:

1、首先,查看系统版本和Glibc版本

执行命令查看glibc版本

strings /lib64/libc.so.6 | grep GLIBC_

结果如下:

由上面的信息可以看出系统是CentOS 6.9,而centos、redhat 系统为了稳定性,glibc的版本还用的是2.12,而现在都已经2.30版本了,为了保险起见,我决定把它升级到2.17版本。

2、下载软件并升级

wget http://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz tar -xvf glibc-2.17.tar.gz mkdir glibc-2.17/buildcd glibc-2.17/build ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/binmake j4make install

说明:

1、make 后面的-j4 是针对多核cpu提高编译速度的,数字4是cpu 核心的两倍(最大可设置为cpu核心的两倍)

2、--prefix 后面的路径一定要是/usr, 如果换成其他的都可能会导致失败。

安装完成后,最后输出

红框内这句话基本可以确定是升级成功了!!!O(∩_∩)O哈哈~

3、测试

执行

ldd --version

或者执行

strings /lib64/libc.so.6 | grep GLIBC_

至此,glibc 的版本升级就算是大功告成,期待这篇我经过数次(大概重新编译安装了5次,还包括一次系统大部分命令都无法使用,重启系统后都无法进入,不过还要我用的是虚拟机测试)实验测试才验证过的笔记能够帮到大家,后面我还会分享一个glibc升级时libc.so.6 文件误删或者丢失导致大部分命令失效的解决办法,敬请期待!

总结

以上所述是小编给大家介绍的centos 6.9 升级glibc动态库的详细过程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对17站长网的支持!