问题背景
测试环境的服务器使用的操作系统是RHCE 6.5的系统,启动zabbix-agentd(7.0.5)的时候报错:/lib64/libc.so.6: version `GLIBC_2.17’ not found,显然是glibc的版本太低了,导致服务不能启动。
解决思路
查看当前版本
strings /lib64/libc.so.6|grepGLIBC当前最高支持GLIBC_2.12,根据错误提示需要升级glibc.so.6到2.17版本
升级过程
下载升级包:http://ftp.gnu.org/gnu/glibc/,搜索2.17版本,我这里选择glibc-2.17.tar.gz,点击直接下载或者wget下载
升级前最好复制/lib64目录到其它位置,万一有问题还可以恢复,省的在折腾
升级命令
tarzxf glibc-2.17.tar.gzcdglibc-2.17mkdirbuild&&cdbuild ./configure --prefix=/opt/glibc-2.17make&&makeinstallcplib/libc-2.17.so /lib64后面升级操作就是换libc.so.6的软连接位置
unlink /lib64/libc.so.6LD_PRELOAD=/lib64/libc-2.12.soln-s /lib64/libc-2.17.so /lib64/libc.so.6完成后运行命令测试是否正常
回滚
如果有问题那么直接按照下面的方法回滚即可
LD_PRELOAD=/lib64/libc-2.12.soln-s /lib64/libc-2.12.so /lib64/libc.so.6无论出现什么问题,只要有备份的库文件就可以恢复,记得不到推出端口,以免出问题后无法再登录,祝大家正常