• Resolved markussss

    (@markussss)


    Hi,

    I am out of a sudden on a single website and single cPanel account receiving the following daily error. I am triggering wp-cron.php via server cron. This all works just fine. The backups are also completed and uploaded to an external cloud storage provider. The error is sent exactly when the Updraft backup runs and there is also an indication that its connected to Updraft.

    Can’t locate cPstrict.pm in @inc

    Can't locate cPstrict.pm in @INC (you may need to install the cPstrict module) (@INC contains: /usr/local/cpanel /usr/local/cpanel /usr/local/cpanel/3rdparty/perl/536/cpanel-lib/x86_64-linux /usr/local/cpanel/3rdparty/perl/536/cpanel-lib /usr/local/cpanel/3rdparty/perl/536/lib/x86_64-linux /usr/local/cpanel/3rdparty/perl/536/lib /opt/cpanel/perl5/536/site_lib/x86_64-linux /opt/cpanel/perl5/536/site_lib) at /usr/local/cpanel/Cpanel/Quota.pm line 8.
    BEGIN failed--compilation aborted at /usr/local/cpanel/Cpanel/Quota.pm line 8.
    Compilation failed in require at /home/userfolder/public_html/wp-content/plugins/updraftplus/includes/get-cpanel-quota-usage.pl line 9.
    BEGIN failed--compilation aborted at /home/userfolder/public_html/wp-content/plugins/updraftplus/includes/get-cpanel-quota-usage.pl line 9.

    My hosting provider is not caring at all about this – they always push it back to me or to blame others, but that is also their usual behavior which is the worst.

    Someone else posted this long time ago https://www.ads-software.com/support/topic/cant-locate-cpstrict-pm-in-inc/

    The suggestion was to follow this https://docs.cpanel.net/knowledge-base/general-systems-administration/perl-module-installation/

    I don’t have permissions for all of this. I only can try to install cPstrict.pm via Perl Modules in cPanel which leads to another issue. When I try myself to install the Perl Module cPstrict.pm (no idea what I am doing here but no support from the hosting company) then I get the following.

    I assume the following is not an Updraft topic, but if Updraft is the source of it, I wouldn’t need to get into the discussions with the hosting provider. I wonder why would this happen on a single site? Out of the blue when it works with every other site on every hosting provider just fine.

    Ping:1.044162 (ticks) Testing connection speed to www.cpan.org using pureperl...(cached .. 514435.97 bytes/s)...Done
    Ping:1.017423 (ticks) Testing connection speed to 103.163.138.20 using pureperl...(using cached speed)...Done
    Ping:1.037425 (ticks) Testing connection speed to 184.94.196.93 using pureperl...(using cached speed)...Done
    Ping:1.031302 (ticks) Testing connection speed to 103.48.119.120 using pureperl...(using cached speed)...Done
    Three usable fallback mirrors located
    Fetching https://www.cpan.org/index.html (connected:0).......(request attempt 1/12)...Resolving www.cpan.org...(resolve attempt 1/65)[email protected] success......Done
    Mirror Check passed for www.cpan.org (/index.html)
    Checking C compiler....Could not locate an executable "gcc" binary....Done
    ** Unrecoverable Error **
    The C compiler is not functional and auto repair failed.
    Perl module installs require a working C compiler.
    Please repair the C compiler and try again.

    Any additional information about this?

Viewing 13 replies - 1 through 13 (of 13 total)
  • Plugin Support pbevanudp

    (@pbevanudp)

    Hello,

    The root cause of the issue is not specifically related to UpdraftPlus, rather it is in the missing cPstrict module, which UpdraftPlus relies on to get cPanel quota usage and inform the user whether they have enough disk space or not.

    To remove this check you can edit the wp-config.php file and add the following line :

    define('UPDRAFTPLUS_SKIP_CPANEL_QUOTA_CHECK', true);

    Thread Starter markussss

    (@markussss)

    What could be the reason that for years this did not matter on any hosting provider, and now out of a sudden it does but only on a single site, single hosting provider? The host says, the cPstrict.pm module does not exist in cPanel. They literally say, it does not exist at all with cPanel, and they can’t install what does not exist

    If you are right and the hosting provider is right – the conclusion would be that Updraft is not fully compatible with any cPanel hosting, because knowing the available space before running a backup is definitely essential as it would otherwise take the website down

    I cannot imagine that Updraft is not compatible with cPanel, so something is a bit strange overall


    Plugin Support vupdraft

    (@vupdraft)

    Do you have WHM access?

    The server administrator may have disabled compiler access for unprivileged users.

    If this is the case, the administrator can re-enable access to compilers for everyone or specific users in WHM under the menu?Home ?Security Center ?Compiler Access.

    You can install the module using this guide: https://docs.cpanel.net/whm/software/install-a-perl-module/

    It’s a Perl module that can be installed via WHM. Your hosting can and should be able to do this for you.

    I use WHM and Cpanel to administer my sites and I can manage this. They either lack the knowledge or the will to assist you properly. My advice would be to find a new hosting company.

    In the meantime my colleague is correct, you can use that code as a workaround to skip the check.

    Thread Starter markussss

    (@markussss)

    Thanks for your well explained reply

    As you run WHM/cpanel yourself and manage it (I am just on a reseller), do you see the same as in the screenshot below? That’s what I see, and that’s the screenshot my host sent me
    https://cln.sh/HHlFgv8y

    The host did enable the compiler for me after roughly 10 emails. Switching host is not so easy as you can imagine (but yes it proves again and again the host is not caring much).

    The host asked me what is the EXACT name of the perl module. They assume the name is not cpstrict or cpScrict.pm because this does not exist (their words).

    They also say if the module comes from an external repository like CPAN then they can’t do anything about it. They can only offer the default cPanel Perl modules.

    Maybe that helps to make it more clear. I am on this ticket for a few days now with the hosting company and spent already approx. 10 hours on it, so you can imagine it’s getting difficult

    Thanks again, I see with you I am in good hands to get the right information to get this sorted out

    Plugin Support vupdraft

    (@vupdraft)

    Apologies for the delay over the weekend.

    If I enter cpStrict I get no search results. Looking at my installed perl modules I do not se cPstrict as a module I have installed.

    Can you check if you have these three modules installed;

    CPAN

    CPAN::Meta::Requirements

    CPAN::Meta::YAML

    This is a list of all my installed Perl modules

    https://snipboard.io/zWUj5L.jpg

    https://snipboard.io/AY3pP4.jpg

    https://snipboard.io/JmQI8p.jpg

    It has to be one of these but I think it should be in one of the CPAN modules. Apologies, It’s going to be a bit of trial and error but I think we can get to the bottom of it.

    Thread Starter markussss

    (@markussss)

    Thanks for checking. So, ok, it’s a bit confusing that the error message related to Updraft shows cpStrict when nobody knows about this script

    I checked what you suggested: all of the modules exist except for: CPAN::META::YAML and List::Util

    However, I checked another cPanale account and this one does not have those Perl Modules either. All of those accounts and website have the same cPanel setup. There was no change in the cPanel accounts and no change on the website either

    Plugin Support vupdraft

    (@vupdraft)

    Hi,

    Sincere apologies, I have just realised that the answer may have been right in front of us all along

    Can’t locate cPstrict.pm in @inc (you may need to install the cPstrict module) (@INC contains: /usr/local/cpanel /usr/local/cpanel /usr/local/cpanel/3rdparty/perl/536/cpanel-lib/x86_64-linux /usr/local/cpanel/3rdparty/perl/536/cpanel-lib /usr/local/cpanel/3rdparty/perl/536/lib/x86_64-linux /usr/local/cpanel/3rdparty/perl/536/lib /opt/cpanel/perl5/536/site_lib/x86_64-linux /opt/cpanel/perl5/536/site_lib) at /usr/local/cpanel/Cpanel/Quota.pm line 8.
    BEGIN failed–compilation aborted at /usr/local/cpanel/Cpanel/Quota.pm line 8.

    Its the Quota.pm we should have been looking for can you try installing this?

    https://snipboard.io/D0hWTj.jpg

    Thread Starter markussss

    (@markussss)

    Hi again,

    I tried myself and forwarded it to the hosting company as well because I can’t install the Quota module.

    However, I can compare it with every other cPanel account. This module is not installed on any of the cPanel accounts. Those cPanel accounts are all identical, only on one single account out of a sudden Updraft is triggering this daily error emails

    Two attempts to install:

    1st trying to install “Quota”

    Testing connection speed...(using fast method)...Done
    Ping:1.020792 (ticks) Testing connection speed to www.cpan.org using pureperl...(cached .. 425196.52 bytes/s)...Done
    Ping:1.022489 (ticks) Testing connection speed to 110.232.143.226 using pureperl...(using cached speed)...Done
    Ping:1.023324 (ticks) Testing connection speed to 103.48.119.120 using pureperl...(using cached speed)...Done
    Ping:1.023025 (ticks) Testing connection speed to 103.15.48.49 using pureperl...(using cached speed)...Done
    Three usable fallback mirrors located
    Fetching https://www.cpan.org/index.html (connected:0).......(request attempt 1/12)...Resolving www.cpan.org...(resolve attempt 1/65)[email protected] success......Done
    Mirror Check passed for www.cpan.org (/index.html)
    Checking C compiler....Could not locate an executable "gcc" binary....Done
    ** Unrecoverable Error **
    The C compiler is not functional and auto repair failed.
    Perl module installs require a working C compiler.
    Please repair the C compiler and try again.
    **************************

    2nd trying to install “Quota.pm”

    Testing connection speed...(using fast method)...Done
    Ping:1.020792 (ticks) Testing connection speed to www.cpan.org using pureperl...(cached .. 425196.52 bytes/s)...Done
    Ping:1.022489 (ticks) Testing connection speed to 110.232.143.226 using pureperl...(using cached speed)...Done
    Ping:1.023324 (ticks) Testing connection speed to 103.48.119.120 using pureperl...(using cached speed)...Done
    Ping:1.023025 (ticks) Testing connection speed to 103.15.48.49 using pureperl...(using cached speed)...Done
    Three usable fallback mirrors located
    Fetching https://www.cpan.org/index.html (connected:0).......(request attempt 1/12)...Resolving www.cpan.org...(resolve attempt 1/65)[email protected] success......Done
    Mirror Check passed for www.cpan.org (/index.html)
    Bad module name (Quota.pm) detected, skipping it.
    Plugin Support vupdraft

    (@vupdraft)

    It’s the “Quota” that you should be using (not “Quota.pm”)

    The permissions on /usr/bin/gcc determine if compiler access is enabled or disabled: When compiler access is enabled, the /usr/bin/gcc file has the following permissions: -rwxr-xr-x root root When you disable compiler access, cPanel changes the permissions of the /usr/bin/gcc file to: -rwxr-x— root compiler

    You need to enable compiler access in order to enable the gcc binary

    https://docs.cpanel.net/whm/security-center/compiler-access/

    Thread Starter markussss

    (@markussss)

    Yes, I just tried both in the end as the first one didn’t work and I was not 100% sure which one I should install

    The hosting provider kind of finally gave in, they installed the “cpStrict” module on the entire server now. Finges crossed to see after tonight if this finally solved it

    (still odd though as it’s only showing up on one single cPanel account and one single website)

    Thread Starter markussss

    (@markussss)

    It seems to be solved ???

    I didn’t get the email notification today that tells me Can’t locate cPstrict.pm in @INC

    I was not able to find or install any of the mentioned Perl modules myself in my cPanel Reseller account. But the global and server-wide install of cpStrict perl module, performed by the hosting provider seems to solve it.

    It’s still unclear why this was suddenly happening while it didn’t show up in the last 6 to 8 months (I switched hosting around that time). It’s unclear why it showed up only on a single website, and single cPanel account. So not everything makes sense here to me, however at least I know it’s solved and I can get reliable backups where Updraft checks the quote before running the backup, reducing the risk that a backup attempt is taking down the cPanel account and therefore the entire website

    Thanks for your support it was definitely a lot of help to sort this out with the hosting provider

    best wishes
    Markus

    Thread Starter markussss

    (@markussss)

    I am adding one more thing, if someone comes to this thread.

    I think I understand now why it only showed up on a single cPanel account and not on all other accounts and websites. I understand now why it never showed up in the last months, and then suddenly it did.

    It’s not sending those emails at all when cPanel cron email notifications are disabled. I enabled the cron email notifications.

    That tells me, this did not work ever before, I just did not know about it.

    Only because I enabled the cron job email notifications on that one account (and forgot about it) this showed me that there was this missing perl module on my server, that could only be installed from the hosting provider

    Plugin Support vupdraft

    (@vupdraft)

    That’s really interesting. Thank you for the additional information. It’s really helpful to know these kind of things.

    I am very pleased that you hosting relented and enabled it for you as well!

Viewing 13 replies - 1 through 13 (of 13 total)
  • You must be logged in to reply to this topic.