- A+
所属分类:未分类
前一段时间,为了解决libc.so.6升级问题,一不小心将libc.so.6这个文件删除了,导致好多命名不能用了,好在登录窗口还没有退出,不然就麻烦了。
其实我们知道,这个文件就是一个软连接,那么怎么恢复呢,其实很简单,命令如下:
LD_PRELOAD=/lib64/libc-2.12.so ln -s /lib64/libc-2.12.so libc.so.6
这样就可以搞定。下来说说怎么升级吧。
如图,试图运行程序,提示"libc.so.6: version `GLIBC_2.14' not found",原因是系统的glibc版本太低,软件编译时使用了较高版本的glibc引起的,那么怎么处理呢
首先:我们需要查看一下系统支持的glibc版本,如下:
[root@iZm5ebs8t32xui1x96nZ /]# strings /lib64/libc.so.6 |grep GLIBC_ GLIBC_2.2.5 GLIBC_2.2.6 GLIBC_2.3 GLIBC_2.3.2 GLIBC_2.3.3 GLIBC_2.3.4 GLIBC_2.4 GLIBC_2.5 GLIBC_2.6 GLIBC_2.7 GLIBC_2.8 GLIBC_2.9 GLIBC_2.10 GLIBC_2.11 GLIBC_2.12 GLIBC_2.13 GLIBC_2.14 GLIBC_PRIVATE
通过上面可以看出,系统是支持2.14的,那么我们就下载glibc-2.14.tar.xz 的安装包,下载地址如下:
http://www.gnu.org/software/libc/
下载下来后,解压,编译
#tar glibc-2.14.tar.gz #cd glibc-2.14 #./configure --prefix=/opt/glibc-2.14 #make #make install
执行完毕后去/opt/glibc-2.14/lib目录下找到libc-2.14.so 文件,然后执行如下命令
#LD_PRELOAD=/opt/glibc-2.14/lib/libc-2.14.so ln -s /opt/glibc-2.14/lib/libc-2.14.so libc.so.6
然后,我们再查看一下系统当前使用的glibc版本,如下:
[root@iZm5ebs8t32xuitvm1x96nZ lib]# /lib64/libc.so.6
GNU C Library stable release version 2.14, by Roland McGrath et al.
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.4.7 20120313 (Red Hat 4.4.7-18).
Compiled on a Linux 2.6.32 system on 2018-02-06.
Available extensions:
crypt add-on version 2.1 by Michael Glad and others
GNU Libidn by Simon Josefsson
Native POSIX Threads Library by Ulrich Drepper et al
BIND-8.2.3-T5B
libc ABIs: UNIQUE IFUNC
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.
这样就ok了,升级到其他高版本也一样
- 安卓客户端下载
- 微信扫一扫
- 微信公众号
- 微信公众号扫一扫