Recovering from cPanel RMP issues

November 16, 2015

Ocasionally, any cPanel server is likely to come across issues it is unable to resolve on its own. One that is a little difficult to troubleshoot is RPM conflicts and RPM duplicates which in particular happen often on my DNS Only servers.  As I come across these somewhat often, I’ve setup some troubleshooting steps for you to follow.

The most common scenario where I have seen this happen recently is updating cPanel on DNS Only server to 11.52 which gives the following error while updating:


E Sysup: Needed system RPMs were not installed: nscd, python-setuptools, xz, yum-utils

While I’ve tried different approaches to fix these in the past, the one that consistently works best is the following:

cPanel does offer some tools to help you get started… while not particularly helpful in terms of verbose output, typing the command bellow should “fix” most common issues:


/usr/local/cpanel/scripts/check_cpanel_rpms --fix

If that does not fix your problems, you are likely to need a more manual approach and in this case, understanding the error (as per above) would be vital. In my case, the most common error I get across my servers is Duplicate RPM’s which are generally due to connection drops or multiple update attempts processes that ultimately conflict and leave duplicate packages in the system.

To resolve this, I aid myself with the “yum-complete-transaction” utility which is available from “yum-utils”. So as a first step, make sure you install that:


yum install yum-utils

Upon installing, make sure you clear off from any previous pending transactions by running:


yum-complete-transaction --cleanup-only

After clearing old pending transactions, if your issue is with duplicate RPM’s (like mine), you should run:


package-cleanup --cleandupes

This is going to REMOVE duplicate packages / RPM’s from your system. Please be advise this can permanently render your server useless so PLEASE have a backup of your server before proceeding or be absolutely certain of what you are doing before proceeding. You have been warned.

After removing duplicates, you might want to do a system update:


yum update

If all went well, your system is able to update now and you should be able to successfully run:


/scripts/upcp

or


/scripts/upcp --force

Good luck!