libc.so.6 version GLIBC2.14 not found 解决办法

环境说明

  • CentOS 6.8

查看Glibc版本

  • 查看系统glibc库版本可使用如下命令
strings /lib64/libc.so.6 |grep GLIBC_  
  • 输出如下glibc版本列表, 从此图可以看出系统最高支持glibc的2.12版本
GLIBC_2.2.5  
GLIBC_2.2.6  
GLIBC_2.3  
GLIBC_2.3.2  
GLIBC_2.3.3  
GLIBC_2.3.4  
GLIBC_2.4  
GLIBC_2.5  
GLIBC_2.6  
GLIBC_2.7  
GLIBC_2.8  
GLIBC_2.9  
GLIBC_2.10  
GLIBC_2.11  
GLIBC_2.12  

升级Glibc 2.14

  • 下载安装
wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz  
tar zxf glibc-2.14.tar.gz  
cd glibc-2.14 && mkdri build  
cd build && ../configure --prefix=/opt/glibc-2.14  
make && make install  

glibc软链

  • 方法一(但是这样会导致乱码)
rm -rf /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  
  • 方法二
export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH  
echo "export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH" >> /etc/rc.local  
  • 如果失败,可以进行还原
LD_PRELOAD=/lib64/libc-2.12.so ln -s /lib64/libc-2.12.so /lib64/libc.so.6    // libc-2.12.so 此项是系统升级前的版本  

此时再看glibc版本

GLIBC_2.2.5  
GLIBC_2.2.6  
GLIBC_2.3  
GLIBC_2.3.2  
GLIBC_2.3.3  
GLIBC_2.3.4  
GLIBC_2.4  
GLIBC_2.5  
GLIBC_2.6  
GLIBC_2.7  
GLIBC_2.8  
GLIBC_2.9  
GLIBC_2.10  
GLIBC_2.11  
GLIBC_2.12  
GLIBC_2.13  
GLIBC_2.14  
GLIBC_PRIVATE