Page 1 of 1

Can't locate Net/DNS/Resolver/linux.pm

Posted: 21 Feb 2019, 19:03
by sparek
Upgraded to cPanel 78.

lfd won't start

Code: Select all

lfd[894]: Main Process: Can't locate Net/DNS/Resolver/linux.pm in @INC (you may need to install the Net::DNS::Resolver::linux module)
Not really finding anything that uses Net::DNS::Resolver::linux - not sure what's going on.

Not seeing where anyone else has had this issue, and I'm sure I'm not the only one using cPanel 78 now. So have to believe it's something specific to my setup. But I don't know where to look.

Re: Can't locate Net/DNS/Resolver/linux.pm

Posted: 21 Feb 2019, 20:36
by ForumAdmin
If you're doing it from within WHM, try logging out of WHM, restart cpsrvd:

Code: Select all

/scripts/restartsrv_cpsrvd --hard
Then login and try again. Alternatively, restart lfd from the SSH root shell, unless that is where you are seeing the problem.

Re: Can't locate Net/DNS/Resolver/linux.pm

Posted: 21 Feb 2019, 20:40
by ForumAdmin
That said, I don't know what is throwing that error either as I'm not aware of anything using Net::DNS::Resolver::linux

Re: Can't locate Net/DNS/Resolver/linux.pm

Posted: 21 Feb 2019, 21:20
by sparek
Yea, that's my thoughts as well.

Do you think this might be something to do with the new cPanel release - cPanel 11.78.0.11 ? They had licensing issues yesterday and had to release an updated version of cPanel to fix licensing issues (or something, they were kind of hush, hush about it).

The only references I am seeing to Net::DNS::Resolver::linux are in

/usr/local/cpanel/cpkeyclt
/usr/local/cpanel/cpsrvd.so

Which would seem to fit with licensing issues.

Nobody else running cPanel 78.0.11 is seeing this? Am I the only one that has upgraded to 78.0.11?

The same references to Net::DNS::Resolver::linux appear in those files in cPanel 76.0.20. I'm still not finding any linux.pm file any where on any server though.

A hard restart of cpsrvd doesn't seem to help.

Re: Can't locate Net/DNS/Resolver/linux.pm

Posted: 21 Feb 2019, 21:24
by ForumAdmin
Does it restart OK from the command line, or is that only in WHM that you see the error?

We're running v78.0.11 on our servers without issues. Have you tried "/scripts/upcp --force" incase something is incomplete after the upgrade?

Re: Can't locate Net/DNS/Resolver/linux.pm

Posted: 21 Feb 2019, 21:25
by sparek
For what it's worth, I was able to "solve" this by copying /usr/local/cpanel/3rdparty/perl/528/lib/perl5/cpanel_lib/Net/DNS/Resolver/UNIX.pm to /usr/local/cpanel/3rdparty/perl/528/lib/perl5/cpanel_lib/Net/DNS/Resolver/linux.pm and changing the instances of UNIX to linux in that file. And lfd restarts.

I'm certain that's not a kosher fix... but at least it lets lfd restart.

Re: Can't locate Net/DNS/Resolver/linux.pm

Posted: 21 Feb 2019, 21:26
by sparek
I'm dealing strictly in the command line.

service lfd restart

while tailing /var/log/lfd.log

Re: Can't locate Net/DNS/Resolver/linux.pm

Posted: 21 Feb 2019, 21:39
by sparek
Hmm, a forced upcp didn't seem to solve it.

Can you say if you have a Net/DNS/Resolver/linux.pm file some where on the 78.0.11 server? Perhaps I'm missing a package some where? Although I would assume upcp would install the necessary packages that cPanel needs.

Also.. no clue why this is popping up in lfd.log if CSF/LFD doesn't even use this.

Really weird.

Re: Can't locate Net/DNS/Resolver/linux.pm

Posted: 21 Feb 2019, 21:47
by ForumAdmin
No, that file doesn't exist for Net::DNS::Resolver, the error is due to some fallback in Perl that makes Net::DNS::Resolver look for linux.pm. Why it happens I've no idea. It's likely some perl module dependency, but that can be a bit of a rabbit hole.

If you'd like to log a ticket on the helpdesk we can have a look tomorrow and see if we can find what is causing the failure.

Re: Can't locate Net/DNS/Resolver/linux.pm

Posted: 01 Oct 2020, 08:19
by roundcubeten
In your module you must do:

eval { local $SIG{'__DIE__'}; require '...' };

Due to the current arguably broken state of __DIE__ hooks