对glibc的操作非常危险,如果您对Linux操作系统的操作仅限于查看别人的资料来解决问题的话,我还是比较真诚的劝退你了。只所以还是写下这篇博文,一是为了记录自己排错的过程,二是更正目前网络中一些不太正确的博文,防止将新手带入坑中。
centos7.9 在运行一些软件时,会出现/lib64/libc.so.6: version GLIBC_2.18 not found
的提示,原因是centos7.9默认使用的是glibc 2.17。为了运行这类程序,我们理所当然的想到升级glibc。以下就是升级glibc 到 2.18的命令。大家感兴趣的话可以在测试环境中实验,如果没有充分的把握千万不要在生产环境中使用。
1.安装glibc 2.18
使用下面的命令安装glibc 2.18
wget https://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz
tar zxvf glibc-2.18.tar.gz
cd glibc-2.18
mkdir build && cd build
../configure --prefix=/usr
make -j$(nproc)
make install
在执行上述命令时很顺畅,并没有报错提示,安装完成后,使用命令ldd --version
,查看当前的glibc,发现已经是2.18了。并且再次前面报错的程序时能够正常运行了。
正当你感到如释重担的时候,可是当系统重启后,你会惊奇的发现已经无法进入桌面系统了。查了许多资料,问题指向是glibc 2.18版本的问题,只要把glibc 2.18 回滚到glibc 2.17,就会解决以上问题了。
重启系统后,我的虚拟机已经无法显示