This Blog is to share our knowledge and expertise on Linux System Administration and VMware Administration

Tuesday, December 29, 2015

Esxupdate error code:15. The package manager transaction is not successful error While Remediating an ESXi 5.x or 6.0 host

Whenever - You cannot remediate an ESXi 5.x or 6.0 host using vCenter Update Manager.

 Remediating ESXi 5.x or 6.0 hosts fails.

 A package is to be updated on the host, particularly when VMware_locker_tools-light* is corrupt.  

error code:15. The package manager transaction is not successful. Check the Update Manager log files and esxupdate log files for more details.

To resolve this issue

 Recreate the/locker/packages/version/ folder, where version is:
        ESXi 5.0 – /locker/packages/5.0.0/
        ESXi 5.1 – /locker/packages/5.1.0/
        ESXi 5.5 – /locker/packages/5.5.0/
        ESXi 6.0 – /locker/packages/6.0.0/

To verify the store folders contents and symbolic link:

 Connect to the ESXi host using an SSH session.
 Check for information in the /store folder by running this command:
        ls /store

This folder must contain packages and var folder.
Run this command to verify that the symbolic link is valid:
        ls -l /

The /store folder should be linked to /locker and appear as:
        locker  -> /store

If that link is not displayed, run this command to add the symbolic link:
        ln -s /store /locker

To recreate the/locker/packages/version/ folder:
 Put the host in the maintenance mode.
 Navigate to the /locker/packages/version/ folder on the host.
 Rename /locker/packages/version/ folder to /locker/packages/version.old.
 Remediate the host using Update Manager.

The /locker/packages/version/ folder is recreated and the remediation should now be successful.
 Note: Verify if you can change to the other folders in /locker/packages/version/. If not, rename all the three folders including floppies.

An alternative resolution for ESXi:
Put the host in the maintenance mode.
Navigate to the /locker/packages/version/ folder on the host.
Rename the folder to:
       /locker/packages/ version.old

Run this command as the root user to recreate the folder:
       mkdir / locker/packages/ version/

For ex:

In ESXi 5.0:
        mkdir / locker/packages/5.0.0/

In ESXi 5.1:
        mkdir / locker/packages/5.1.0/

 In ESXi 5.5:
        mkdir / locker/packages/5.5.0/

In ESXi 6.0:
        mkdir / locker/packages/6.0.0/

Use WinSCP to copy the folders and files from the / locker/packages/ version/ directory on a working host to the affected host.

If the preceding methods do not resolve the issue:
Verify and ensure that there is sufficient free space on root folder by running this command:
        vdf -h

Check the locker location by running this command:
        ls -ltr /

If the locker is not pointing to a datastore:
Rename the old locker file by running this command:
        mv /locker /locker.old

Recreate the symbolic link by running this command:
        ln -s /store /locker


  1. Very good article. I definitely appreciate this site. Keep it up!

    1. Thanks for your valuable comment. Please visit again & suggest.