Centos6上glibc的升级

1.glibc简介

libc是GNU发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。

2.glibc升级及考量

Centos 为了稳定使用的glibc版本通常比较低,而有些程序需要依赖更新的版本。但是,升级glibc需要慎重,因为升级失败后可能会导致系统不能正常使用。

如果升级glibc到一个太新的版本,可能会影响CentOS的运行。因此,如果遇到因CentOS中glibc版本影响到程序运行的问题,应该可以考虑:

1)如果程序并没有新版本glibc才支持的特性,可以考虑在低版本glibc的系统编译程序。

2)用高版本glibc的linux系统编译程序,但需部署到较低版本l的inux上,可以考虑用mock等技术制作更好的安装包,将依赖一起打入安装包内。

3)利用容器技术,如Docker,在低版本linux上,轻量级的隔离出一个虚拟运行环境,以适应程序运行。

3.glibc升级

1)下载新版本glibc

https://ftp.gnu.org/gnu/glibc/

cd /opt/

wget http://ftp.gnu.org/gnu/glibc/glibc-2.15.tar.gz

2)解压编译安装glibc

tar -xvzf glibc-2.15.tar.gz

cd glibc-2.15

mkdir build

cd build

../configure --prefix=/opt/glibc-2.15

make && make install

3)替换glibc软链接

rm -rf /lib64/libc.so.6
LD_PRELOAD=/opt/glibc-2.15/lib/libc-2.15.so ln -s /opt/glibc-2.15/lib/libc-2.15.so /lib64/libc.so.6

4)glibc升级回滚

rm -rf /lib64/libc.so.6

LD_PRELOAD=/lib64/libc-2.12.so ln -s /lib64/libc-2.12.so /lib64/libc.so.6
 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章