Symptoms
While running a cPanel update, you may receive errors like the following.
[2020-06-24 00:47:04 +1000] Processing: Assuring needed symlinks in 3rdparty/bin are in place.
[2020-06-24 00:47:04 +1000] - Processing command `/usr/local/cpanel/scripts/link_3rdparty_binaries`
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Possible unintended interpolation of @new_stat in string at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Possible unintended interpolation of @new_stat in string at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$LICENSE_FILE" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "@new_stat" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$LICENSE_FILE" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "@new_stat" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "@new_stat" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "@new_stat" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$fh" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$LICENSE_FILE" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$LICENSE_FILE" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$content" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$fh" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$content" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 117.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$LICENSE_FILE" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 149.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$content" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 150.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$fh" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 153.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Global symbol "$content" requires explicit package name at /usr/local/cpanel/Cpanel/Server/Type.pm line 153.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Compilation failed in require at /usr/local/cpanel/Cpanel/Binaries.pm line 14.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] BEGIN failed--compilation aborted at /usr/local/cpanel/Cpanel/Binaries.pm line 14.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] Compilation failed in require at /usr/local/cpanel/scripts/link_3rdparty_binaries line 18.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] BEGIN failed--compilation aborted at /usr/local/cpanel/scripts/link_3rdparty_binaries line 18.
[2020-06-24 00:47:04 +1000] E [/usr/local/cpanel/scripts/link_3rdparty_binaries] The “/usr/local/cpanel/scripts/link_3rdparty_binaries” command (process 1927301) reported error number 255 when it ended.
[2020-06-24 00:47:04 +1000] The Administrator will be notified to review this output when this script completes
Description
These update errors may be the result of the Perl install being older than expected, which can often be caused by the YUM configuration excluding Perl from updates.
The following command will show the excluded packages.
grep ^exclude /etc/yum.conf
Workaround
If "perl*" is present in the exclude line returned by the command above, it should be removed from that line in the /etc/yum.conf file, and updates should be run with the following command.
yum update
After that, cPanel updates should no longer throw these errors.