更新glibc
glibc是gnu發佈的libc庫,即c運行庫。glibc是linux系統中最底層的api,幾乎是其它任何運行庫的基礎。glibc除了封裝linux操作系統所提供的系統服務外,它本身也提供了許多其它一些必要功能實現。最妥當的辦法是更新系統,自帶的glibc會隨之更新,但提供的環境是固定並且離線的,只能離線更新。
極不推薦編譯方式,因爲還需對應Binutils、GMP、Gettext等等、,甚至還要更新GCC,虛擬機測試的時候沒有能順利成功。不要在運行中的系統上安裝 glibc,尤其是生產服務器上,否則將會導致系統崩潰,至少應當將新 glibc 安裝到其他的單獨目錄,以保證不覆蓋當前正在使用的 glibc。
解決辦法比較推薦的是離線安裝包升級。CentOS 6系統中官方支持的最高glibc,因爲沒有官方支持,最後從fedora系統的搞到相關的rpm包。
提示glic 2.15缺失,只需要更新到最新的或者大於等於這個版本即可,更高的版本會包含之前的版本。el6 對應的CentOS 6,下面是搜索到的下載地址:
http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-2.17-55.el6.x86_64.rpm
http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-common-2.17-55.el6.x86_64.rpm
http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-devel-2.17-55.el6.x86_64.rpm
http://copr-be.cloud.fedoraproject.org/results/mosquito/myrepo-el6/epel-6-x86_64/glibc-2.17-55.fc20/glibc-headers-2.17-55.el6.x86_64.rpm
然後上傳到服務器,進行安裝。
rpm -Uvh glibc-2.14.1-6.x86_64.rpm glibc-common-2.14.1-6.x86_64.rpm glibc-headers-2.14.1-6.x86_64.rpm glibc-devel-2.14.1-6.x86_64.rpm
如果直接安裝不行,需要進行強制安裝。命令結尾加上參數--force --nodeps
再進行安裝。
RPM更新包
更新包
rpm -Uvh glibc-2.17-55.el6.x86_64.rpm
glibc-common-2.17-55.el6.x86_64.rpm
glibc-devel-2.17-55.el6.x86_64.rpm
glibc-headers-2.17-55.el6.x86_64.rpm force --force --nodeps
安裝一個包
rpm -ivh xx.rpm
升級一個包
rpm -Uvh xx.rpm
移走一個包
rpm -e xx.rpm
安裝參數
–force 即使覆蓋屬於其它包文件也強制安裝。
–nodeps 如果該RPM包的安裝依賴其它包,即使其它包沒裝,也強制安裝。
查詢一個包是否被安裝
rpm -q xx.rpm
包的信息
rpm -qi xx.rpm
列出包中有哪些文件
rpm -ql xx.rpm