| 
       
	今天帮一个朋友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 
 
	再次升级,搞定! 其他软件请自行参考本文即可。 
      (责任编辑:IT) |