封尘网

让学习成为一种习惯!

升级Centos6.5里glibc为2.14

glibc是gnu发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。如果不小心升级错误极有可能会导致系统崩溃。无法使用系统中的命令,如果重启系统后还会导致,无法进入系统了。

昨天的Hadoop单机伪分布中,在启动Hadoop服务时有一个提示;

16/01/09 16:07:23 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

原因很简单,系统中的glibc库比hadoop2.5.2 中要求的版本低,虽然暂时未发现影响 。但出现解决问题的好奇心。今天把glibc升级一下。

Centos 6.5 系统中glibc版本:

[root@hadoop03 ~]# getconf -a|grep glibc -i
GNU_LIBC_VERSION                   glibc 2.12

升级为2.14。发现Centos 7里的版本为2.17,但是尝试几次都无法升级到2.17,可能跟内核等其它还有关系。

下载地址:wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz

[root@hadoop03 ~]# tar xf glibc-2.14.tar.gz

新建一个目录,随意命名:

[root@hadoop03 ~]# mkdir glibc-build
[root@hadoop03 ~]# cd glibc-build
[root@hadoop03 glibc-build]# ../glibc-2.14/configure --prefix=/usr
[root@hadoop03 glibc-build]# make
[root@hadoop03 glibc-build]# make install

说明:如果不新建一个目录的,是无法直接在解压出来的目录下直接configure的。如果有glibc-2.14目录下新建目录也会出错。

同时,在make install后会提示有错误。但不影响..目录还未发现具体原因,但是glibc已经是升级到2.14版本了。

[root@hadoop03 ~]# getconf -a|grep glibc -i
GNU_LIBC_VERSION                   glibc 2.14

提醒:本文最后更新于 1257 天前,文中所描述的信息可能已发生改变,请谨慎使用。