Perl not updating (11.32.2.15) [checkperlmodules] IO::Interactive::Tiny

Apr 10, 2012
7
0
51
cPanel Access Level
Root Administrator
[Fixed] Perl not updating (11.32.2) [checkperlmodules] IO:Interactive:Tiny

This has been fixed, view the post here

For the past few days I've been getting this e-mail:
Code:
Subject: Subject: [checkperlmodules] The perl module IO::Interactive::Tiny could not be installed.

This module is required by cPanel, and the system may not function correctly until it is installed, and functional.  Below is the results of the auto-install attempt:

Test Run
==============
Can't locate IO/Interactive/Tiny.pm in @INC (@INC contains: /usr/local/lib/perl5/5.8.8/x86_64-linux /usr/local/lib/perl5/5.8.8 /usr/local/lib/perl5/site_perl/5.8.8/x86_64-linux /usr/local/lib/perl5/site_perl/5.8.8 /usr/local/lib/perl5/site_perl .) at - line 1.
BEGIN failed--compilation aborted at - line 1.


Installer Run
==============
The issue is when /usr/local/cpanel/install/perlmods is ran during a /scripts/upcp update this is it's output Perl not updating (11.32.2.15) [checkperlmodules] - Pastebin.com

I can access the mirrors mentioned using Lynx so the issue must be in /usr/local/cpanel/Cpanel/HttpRequest.pm or some other config file that's been messed up during the update.

Any ideas?

Thanks,
Adam.
 
Last edited:

cPanelTristan

Quality Assurance Analyst
Staff member
Oct 2, 2010
7,607
43
348
somewhere over the rainbow
cPanel Access Level
Root Administrator
Hello Adam,

Per the other thread where you also posted, do you have two perl binaries:

Code:
ls -lah /usr/bin/perl /usr/local/bin/perl
If you do not, can you please try running the following:

Code:
/usr/local/cpanel/scripts/checkperlmodules --full --force
/usr/local/cpanel/scripts/upcp --force
If the issue persists after that, can you please submit a ticket in WHM > Support Center > Contact cPanel or using the link in my signature. Please post the ticket number here after opening one for tracking purposes.

Thanks!
 
Apr 10, 2012
7
0
51
cPanel Access Level
Root Administrator
Thanks for the quick reply here's what the ls command returns as well as the Perl version:
Code:
[email protected] [~]# ls -lah /usr/bin/perl /usr/local/bin/perl
lrwxrwxrwx 1 root root  17 Jul 14  2011 /usr/bin/perl -> ../local/bin/perl*
-rwxr-xr-x 1 root root 17K Mar  5  2010 /usr/local/bin/perl*
[email protected] [~]# /usr/bin/perl -v

This is perl, v5.8.8 built for x86_64-linux
 

cPanelTristan

Quality Assurance Analyst
Staff member
Oct 2, 2010
7,607
43
348
somewhere over the rainbow
cPanel Access Level
Root Administrator
Your Perl binary appears fine for the location (/usr/bin/perl symlinked to /usr/local/bin/perl) as well as the version. Please try running the two commands I've noted to try to force updates. If those don't work, a ticket would be the best route.
 
Apr 10, 2012
7
0
51
cPanel Access Level
Root Administrator
Just ran the commands and still got:
Code:
All available perl module install methods have failed
Tested 159, 155 ok, 4 failed.
        Failed install: IO::Interactive::Tiny
        Failed install: IO::Socket::INET6
        Failed install: Net::LibIDN
        Failed install: Socket6
Have opened a ticket now 2510330
 
Apr 10, 2012
7
0
51
cPanel Access Level
Root Administrator
The issue has been fixed now by Joshua B of cPanel's team.
What it was is a mixture of things.

During the update of the Perl Modules what was happening is because "Conserve Memory" was set to "On" under "Server Configuration > Tweak Settings > System" my system was trying to update with cpanm.

Updating with cpanm makes sense if you want to conserve memory during updates, as it only consumes 10MB RAM as opposed to good old cpan.

In my case, cpanm didn't exist as a command on my system, so when the updater was trying to fail back to it, it was unable to issue the command. Once Joshua set "Conserve Memory" to Off, this effectively allowed cpan to run (instead of cpanm).

So if you're having a similar issue and you need to conserve memory, make sure cpanm is installed, you can do this by typing "cpanm" (Without quotes) in terminal, if you get a "command not found" error, either it's not in your PATH or it isn't installed on your system (It's more likely not installed if you can run "cpan"). You can get more info on how to install cpanm here App::cpanminus - search.cpan.org

If you're not fussed about cpanm and would rather use cpan, set "Conserve Memory" to Off.

All "Conserve Memory" does is exactly what it says, but it's at the expense of CPU and Disk I/O.

Once you have done what you need to, be sure to run /scripts/upcp --force :)

I hope this helps anyone else that comes across this issue in the future.
 
Last edited: