Chinaunix首页 | 论坛 | 博客
  • 博客访问: 395937
  • 博文数量: 104
  • 博客积分: 652
  • 博客等级: 上士
  • 技术积分: 1477
  • 用 户 组: 普通用户
  • 注册时间: 2012-07-04 15:20
文章分类

全部博文(104)

文章存档

2019年(1)

2015年(8)

2014年(6)

2013年(59)

2012年(30)

分类: LINUX

2013-11-08 14:03:29

头一次用CentOS,结果就遇到了在用yum时出现了centos使用yum时提示Segmentation fault,这个错误的解决方法网上不少,但是我测试了一下发现不是那么回事,最后几经研究终于搞定

最典型的解决方法莫过于这个贴里提到的

但是很可惜,我测试了没有效果

然后我找了不少文章,发现出现这个问题的关键,在于yum依赖于libz这个软件(该死的依赖,简直比windows下的dll地狱还可怕),而Centos很固执,一直坚持用libz1.2.3,而很多软件又需要更高的版本,于是不少机器上都至少存在两个版本,于是就发生冲突了,但是冲突的解决步骤要求比较高

首先,问题已经发生,请先执行#yum clean all把所有缓存清空,注意,这个命令在问题解决后慎用,否则又必须再来一次,然后,cd /usr/local/lib 进入这个目录,把两个软链接文件清理掉,不删除可能会导致建立的链接无效,


rm libz.so

rm libz.so.1

然后,建立新的libz1.2.3链接库的软链接


ln -s /usr/lib/libz.so.1.2.3 libz.so

ln -s /usr/lib/libz.so.1.2.3 libz.so.1

注意这里的关键,你的链接文件时在/usr/local/lib目录下的,而你要链接的源文件却在/usr/lib,如果弄错了,就可能你找不到源文件,而解决不了问题,也可以把源文件复制到/usr/local/lib里一份,再直接在/usr/local/lib 里建立链接,比如:


ln -sf /usr/local/lib/libz.so.1.2.3 libz.so

ln -sf /usr/local/lib/libz.so.1.2.3 libz.so.1

这里之后,再次运行yum就没问题了

阅读(2125) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~