4. 02.

今天帮一个朋友update系统时,发现其中一台server居然提示:

Transaction Check Error:
file /usr/lib/perl5/5.8.8/CGI.pm from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/lib/perl5/5.8.8/Digest.pm from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/c2ph.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/cpan.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/dprofpp.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/perlvms.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/perlvos.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386

中间省略100行,都是关于perl的

file /usr/share/man/man1/perlwin32.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/perlxs.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/perlxstut.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/piconv.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/splain.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man1/xsubpp.1.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386
file /usr/share/man/man3/CGI.3pm.gz from install of perl-5.8.8-32.el5_7.6.x86_64 conflicts with file from package perl-5.8.8-32.el5_6.3.i386

Error Summary
————-

经过仔细观察是perl的问题,其他软件单独update都没有问题。

看看错误内的大部分信息,就大概可以猜出问题的症结。64位系统内的i386和x64软件的冲突,那么卸载掉i386的冲突相关软件,一般可以解决问题。

两种情况,要不把perl的升级忽略掉,要不卸载了perl的i386,如果是其他软件的冲突,一样对待。

yum update –exclude=perl

找出要冲突的软件

rpm -q perl –qf ‘%{NAME} %{VERSION} %{ARCH}’

得到输出:

perl 5.8.8 x86_64
perl 5.8.8 i386

然后卸载掉冲突的i386包:

rpm -e perl.i386

再次升级,搞定! 其他软件请自行参考本文即可。


作者: hao32 | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明
网址:https://www.hao32.com/webserver/605.html

Tags: , ,

有一条对 „解决yum update时提示Transaction Check Error的问题“ 的评论

  1. lony 发表评论说:

    还好。还在火星。。
    本文发表于 星期六 2012-02-04 20:31

发表评论: