Perl fails to update

14 posts / 0 new
Last post
#1 Tue, 07/01/2008 - 03:12
nomadman

Perl fails to update

Using CentOS 5.1 and while trying to update Perl through Virtualmin, I ran into an error. /snip [code:1]Transaction Check Error: file /usr/lib/perl5/5.8.8/i386-linux-thread-multi/IO.pm from install of perl-5.8.8-10.el5_2.3 conflicts with file from package perl-IO-1.2301-1 file /usr/lib/perl5/5.8.8/i386-linux-thread-multi/IO/Dir.pm from install of perl-5.8.8-10.el5_2.3 conflicts with file from package perl-IO-1.2301-1 file /usr/lib/perl5/5.8.8/i386-linux-thread-multi/IO/File.pm from install of perl-5.8.8-10.el5_2.3 conflicts with file from package perl-IO-1.2301-1 file /usr/lib/perl5/5.8.8/i386-linux-thread-multi/IO/Handle.pm from install of perl-5.8.8-10.el5_2.3 conflicts with file from package perl-IO-1.2301-1 file /usr/lib/perl5/5.8.8/i386-linux-thread-multi/IO/Socket.pm from install of perl-5.8.8-10.el5_2.3 conflicts with file from package perl-IO-1.2301-1[/code:1] snip/ How can I resolve this conflict?

Thank you

Wed, 07/02/2008 - 00:07
Joe
Joe's picture

To be clear (in case anyone is wondering): This is not a Virtualmin issue. ;-)

But, I suspect you have one of two situations:

1. You're upgrading from a much older version of CentOS to a newer version--or this system was upgraded from an older version in the past, and for whatever reason a remnant package is sticking around.

2. You installed "perl-IO" at some point in the past, and it is conflicting with newer packages of Perl that provide perl-IO. However..."perl-IO" is not a standard OS package, so you've installed it from some alternate repository. It's not at all surprising that it would cause trouble during an OS upgrade.

So, you're solutions are:

1. Uninstall perl-IO and try again.

2. Uninstall perl-IO and try again.

If you run into dependency errors, you may have to use the --nodeps option.

--

Check out the forum guidelines!

Fri, 07/04/2008 - 10:07 (Reply to #2)
balzercomp

Hi nomadman,

in CentOs 5.2 the i386 version of perl isn't included in the x86_64 repos.

just do a "yum remove perl.i386" and then the update should work. At least it did for me.

Gerald

Fri, 07/04/2008 - 18:52 (Reply to #3)
nomadman

his balzercomp,

It's asking me it will remove 137 packages while removing perl. Is that a bluff? I don't really want to break anything because everything works properly, other than perl not being up to date.

Fri, 07/04/2008 - 22:09 (Reply to #4)
Joe
Joe's picture

<div class='quote'>It's asking me it will remove 137 packages while removing perl. Is that a bluff? I don't really want to break anything because everything works properly, other than perl not being up to date.</div>

That sounds pretty damned scary to me--but it depends on what those 137 packages are.

--

Check out the forum guidelines!

Sat, 07/05/2008 - 14:48 (Reply to #5)
ronald
ronald's picture

centos will remove all those packages so i hope for you that you pressed N
I would probably uninstall mailscanner with yum if possible and see if yum does also uninstall the dependencies which may lead to resolving the io conflict error
if so then update normally and rethink about installing packages not default to centos

non default packages may break your system and centos says you may keep the pieces if it does :/

Sat, 07/05/2008 - 15:03 (Reply to #6)
ronald
ronald's picture

oh, i would also check if there is a rpmforge on the system (/var/cache/yum/rpmforge), that will likely break things too btw

Sun, 07/06/2008 - 07:11 (Reply to #7)
ronald
ronald's picture

what i found after some search here http://forums.fedoraforum.org/forum/showthread.php?t=184887:

&quot;Mailscanner does not come from a repo, and is not marked for update; it requires certain specific versions of perl modules; those same perl modules are also required by the base perl package;
the base perl package is marked for update, but it cannot be updated, because the sub-modules which it requires cannot be updated, because they are required by Mailscanner. A classic example of cascading dependency conflicts.&quot;

and also here, http://lists.mailscanner.info/pipermail/mailscanner/2008-June/085349.html

basicly your problem is caused by mailscanner.

Wed, 07/02/2008 - 03:58
nomadman

Hi Joe,

I found out that it had nothing to do with the OS or Virtualmin. I installed MailScanner and i'm assuming it has something to do with the failed upgrade. In the meantime, i'm having to exclude perl* and successfully upgraded to CentOS 5.2. Do you think I should do as you described on the previous post?

Thank you

Sat, 07/05/2008 - 00:41
nomadman

Well this is yum's output. In debian, it might saids that but doesn't realy remove them (sometimes). I don't know if it's the same in CentOS.

[file name=perl_removal.txt size=11176]http://www.virtualmin.com/components/com_fireboard/uploaded/files/perl_r...

Sat, 07/05/2008 - 10:58 (Reply to #10)
Joe
Joe's picture

<div class='quote'>Well this is yum's output. In debian, it might saids that but doesn't realy remove them (sometimes). I don't know if it's the same in CentOS.</div>

Egads! Removing that package would do massive damage.

I dunno. I'm stumped. I haven't seen this behavior on any of our systems.

--

Check out the forum guidelines!

Sat, 07/05/2008 - 06:22
balzercomp

There must be something different. In my case only the i386 version of perl was removed. Maybe you can try to update with the CentOS Extras repo enabled. There was a discussion about this problem on the CentOS discussion list. I found my solution there.

Sat, 07/05/2008 - 23:42
nomadman

Hi Ronald,

I haven't updated Perl yet unless I know exactly what to do if/when things go screwy. rpmforge os in the folder but i only enable the repo when i need something from them. Other than that, i'm using repo provided by centos and virtalmin.

Some might argue but i installed mailscanner for a purpose, but I had no idea it would cause this problem. I think I'll hold back Perl for the time being unless i find major problems with running the current version.

@Joe, No worries mate, we all know it isn't your problem and I didn't expect you to troubleshoot. I just needed confirmation the it really wasn't virtialmin's fault ;).

Sun, 07/06/2008 - 22:15
nomadman

Hello Ronald,

Thanks for the heads up. I did find my answers in the link you posted. For those that might run into the same problem, Here is my solution.

As noted on the link above I ran the following command:

[code:1]rpm -e perl-IO perl-File-Temp perl-Math-BigInt perl-Math-BigRat perl-bignum
yum update perl
service MailScanner restart[/code:1]

Then i got several error about &quot;MailScanner is only avaliable with the XS version&quot;...

http://lists.mailscanner.info/pipermail/mailscanner/2007-November/079713...

According to this page I needed to install Scalar List Utils.

[code:1]wget http://search.cpan.org/CPAN/authors/id/G/GB/GBARR/Scalar-List-Utils-1.19...

tar xzvf Scalar-List-Utils-1.19.tar.gz
cd Scalar-List-Utils-1.19

perl Makefile.PL
make test

make install
[/code:1]

Afterward I ran the following commands:

<div class='quote'>service MailScanner restart
MailScanner --lint</div>

All is well thus far.

Thank you

Topic locked