centos7系统升级GLIBC说明

一、前言说明:

strings /usr/lib64/libstdc++.so.6 | grep CXXABI

strings /lib64/libc.so.6 | grep GLIBC_2.27

查看所需的库版本是否存在

这是正常需要的,系统版本低的情况下默认的这个版本都是比较低导致服务无法启动

如果单独升级/usr/lib64/libstdc++.so.6是可以的,但是 /lib64/libc.so.6是底层基础库

都是需要升级的,这样会误升级 /lib64/libc.so.6 再删除备份libc.so.6导致系统故障,

注意:如果出现这种情况需要使用静态软连接sln 来恢复!

sln libc-2.17.so libc.so.6

所以最终我们还是需要来升级gcc和GLIBC来满足需求!

二、升级GLIBC

先升级gcc这个不用讲了,我用的gcc-9.3.0,本来想安装GLIBC-2.31但是这个需要python3.4以上,centos7默认是2.7,为了安全起见还是升级到GLIBC-2.28

1、先下载glibc包

wget https://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz 解压完找到INSTALL文件cat下看看所需的对应环境包版本依赖

主要是gcc  make  bison(yum安装即可)

  1. 先打包下系统文件:tar -czvf /home/soft/glibc_backup.tar.gz /lib64/libc.so* /usr/include/*以防万一
  2. 升级make

wget https://mirrors.aliyun.com/gnu/make/make-4.3.tar.gz

tar zxvf make-4.3.tar.gz

cd make-4.3

mkdir build && cd build

../configure --prefix=/usr/local/make4.3

make && make install

whereis make

cd /usr/bin/  

mv make make.bak

ln -s /usr/local/make4.3/bin/make /usr/bin/make

然后看下版本可以了 make -v

  1. 升级glibc,已下载

tar zxvf glibc-2.28.tar.gz

cd glibc-2.28

mkdir build && cd build

../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin --disable-sanity-checks --disable-werror

注意:--prefix=/usr 指定其他目录的话会导致make install报错:

/home/soft/glibc-2.28/build/elf/ldconfig: Warning: ignoring configuration file that cannot be opened: /usr/local/glibc-2.28/etc/ld.so.conf: No such file or directory 再调整麻烦

make -j4

make install

查看下是否成功ldd --version

至此完成!

三、出现的问题处理:

不过发现升级完出现yum无法使用的情况

主要可能有两个原因:一是没有安装对应的语言包,二是环境变量配置不正确。

到glibc的build下执行:make localedata/install-locales

然后发现虽然不报错了但是yum卡住如下:

发现/usr/lib/cc没了还有就是/usr/lib64/libstdc++.so.6也被还原了

直接删掉/usr/lib/cc 会默认链接到gcc,/usr/lib64/libstdc++.so.6软链接再设置下然后重启下机器就可以了

注:centos7的gcc升级到10版本及glibc升级到2.28以上,因版本问题会导致yum无法使用很难恢复,谨慎升级!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值