Centos6.5升级glibc过程介绍
导读
场景需求
默认的Centos6.5 glibc版本最高为2.12, 而在进行Nodejs开发时项目所依赖的包往往需要更高版本的glibc库支持, 因此在不升级系统的前提下, 需要主动更新系统glibc库. 一般遇到错误libc.so.6: version GLIBC_2.14 not found
时表示需要对glibc进行升级了.
glibc版本
查看系统glibc库版本可使用如下命令:
$ strings /lib64/libc.so.6 |grep GLIBC_
glibc安装
首先,下载glibc, 得到glibc-2.14.tar.gz
使用如下命令解压glibc-2.14.tar.gz
:
$ tar -xzvf glibc-2.14.tar.gz
当前目录下得到目录glibc-2.14
, 执行$cd glibc-2.14
命令进入目录, 依次执行如下命令编译安装glibc-2.14:
$ mkdir build // 在glibc-2.14目录下建立build文件夹 $ cd build // 进入build目录 $ ../configure --prefix=/opt/glibc-2.14 // 配置glibc并设置当前glibc-2.14安装目录 $ make && make install // 编译安装glibc-2.14库
glibc软链
安装完成后, 建立软链指向glibc-2.14, 执行如下命令:
$ rm -rf /lib64/libc.so.6 // 先删除先前的libc.so.6软链 $ ln -s /opt/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6
注意
删除libc.so.6
之后可能导致系统命令不可用的情况, 可使用如下方法解决:
$ LD_PRELOAD=/opt/glibc-2.14/lib/libc-2.14.so ln -s /opt/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6
如果上述更新失败可使用如下命令还原:
$ LD_PRELOAD=/lib64/libc-2.12.so ln -s /lib64/libc-2.12.so /lib64/libc.so.6 // libc-2.12.so 此项是系统升级前的版本
评论(0)