Perl update failed

Hi, I just accessed the Software Package Updates portion of Webmin, and perl was listed as an update. I clicked on the Update Selected Packages button and received the feedback listed in the attached file. Ultimately the feedback is that there are many conflicts and that the package was not installed.

I am only applying this update based on the assumption that it is a good idea to keep on top of updates for security reasons. Otherwise this is not a timely issue for me.

Status: 
Active

Comments

Hmm.. are you using the 32bit or 64bit kernel on your server?

It looks like you already have that Perl version installed, but with the 32bit architecture. What you were attempting to install was a 64bit version of Perl.

Joe's picture
Submitted by Joe on Fri, 10/01/2010 - 10:53 Pro Licensee

This is a packaging issue. There are lots of Google hits about it. This is one of several tickets on the subject in the RHEL tracker:

https://bugzilla.redhat.com/show_bug.cgi?id=437113

There are a few posts that make it seem extremely scary to fix, requiring the removal of the i386 Perl completely using yum. Which can have disastrous dependency consequences if not done with extreme care.

I don't know what the safe solution to this problem is. It's not related to Virtualmin, so it's not exactly in our area of expertise, though we've seen it happen a couple times before. I don't recall what solution was chosen in those cases.

This article looks like the safest, and most informed choice, to me:

http://slash4.de/tutorials/CentOS_5.4_perl_update_problem

If the situation is that you have both i386 and x86_64 versions of Perl installed, you should probably follow those instructions to get things cleaned up and yum updates working correctly again.

I appear to be in exactly that situation myself, using CentOS 5.5. Has anyone else with both the i386 and x86_64 versions of perl installed safely removed the former via rpm as described in the article Joe linked to? I'd love some reassurance that I won't bork my production server if I try it.

I didn't bother doing anything about it. It all started with the update suggested by Virtualmin, which didn't work. Hopefully a simple resolution will make itself available, once enough people are inconvenienced by this issue.

Joe's picture
Submitted by Joe on Sun, 10/03/2010 - 23:19 Pro Licensee

I guess I was overly threatening in my explanation of things. While using yum to remove perl can have disastrous dependency consequences, using rpm to do so in the way documented in the link I provided would have no way to result any anything too scary (worst case scenario, you reinstall the Perl package that you uninstalled if something goes wrong). It was the dependency stuff in using yum to do it that had me concerned about some of the advice I found.

I recommend you follow the doc I linked to. It's perfectly sane advice, and seems well-informed on what's going on, and the worst that can happen is that Perl applications stop working (this is an unlikely outcome), in which case you'd just reinstall the i386 Perl.

It all started with the update suggested by Virtualmin, which didn't work.

It sounds like you're still under the impression this is a Virtualmin-related issue. It's not. It is a packaging issue in RHEL/CentOS. Virtualmin uses the native package manager to make suggestions for updates...if the native package manager (yum/RPM in this case) or the package in question tries to do something stupid, Virtualmin has no way of knowing about it or preventing it; it can only run the usual update command, and report on what happens. The Perl packages from RHEL/CentOS are borked and don't behave sanely in this circumstance. There is nothing Virtualmin can do about it.

(This is why I didn't want to add update features to Virtualmin. I knew we'd catch the blame for stuff we have no control over!) ;-)

Yes,

http://slash4.de/tutorials/CentOS_5.4_perl_update_problem

this works and it is a centos issue, not a virtualmin issue. After following the instructions successfully, I saw that it was still prompting to upgrade perl in webmin main page. To fix this after you follow the instructions at the above link, Just Click the Virtualmin Package Updates link and then go back to main page. The update notification will be removed.