Resolving device mapper dependency conflicts

To perform this procedure, you need:
  • An RHEL/CentOS system with internet access and the same operating system release and kernel as the Control Center hosts in your deployment.
  • A secure network copy program.
Use this procedure to resolve dependency issues in which the installed versions of device mapper libraries are newer than the versions included in the Zenoss mirror. The following example shows a typical yum error of this type:
Error: Package: 7:device-mapper-event-1.02.107-5.el7.x86_64 (zenoss-mirror)
Requires: device-mapper = 7:1.02.107-5.el7
Installed: 7:device-mapper-1.02.107-5.el7_2.5.x86_64 (@updates)
device-mapper = 7:1.02.107-5.el7_2.5

Follow these steps:

  1. Display the version number of the installed device mapper package.
    rpm -q device-mapper | cut -d - -f 3-
    Example result:
    1.02.135-1.el7_3.1.x86_64

    Record the version number for subsequent use.

  2. Log in to a compatible host that is connected to the internet as root, or as a user with superuser privileges.
    The host must have the same operating system (RHEL or CentOS) and release installed as the Control Center hosts in your deployment.
  3. Install yum utilities, if necessary.
    1. Determine whether the yum utilities package is installed.
      rpm -qa | grep yum-utils
      • If the command returns a result, the package is installed. Proceed to the next step.
      • If the command does not return a result, the package is not installed. Perform the following substep.
    2. Install the yum-utils package.
      yum install yum-utils
  4. Download the required dependencies, and then create a tar archive of the files.
    1. Create a variable for the dependency version to download.
      Replace Device-Mapper-Version with the version number displayed in a previous step:
      myVersion=Device-Mapper-Version
    2. Create a temporary directory for the dependencies.
      mkdir /tmp/downloads
    3. Download the dependencies to the temporary directory.
      yum install --downloadonly --downloaddir=/tmp/downloads \
        device-mapper-event-$myVersion
      The yum command downloads two package files.
    4. Create a tar archive of the temporary directory.
      cd /tmp && tar czf ./downloads.tgz ./downloads
  5. Use a secure copy program to copy the archive file to the /tmp directory of the Control Center host or hosts that need the dependencies.
  6. Log in to the host as root, or as a user with superuser privileges.
  7. Install the device mapper dependencies.
    1. Extract the packages from the tar archive.
      cd /tmp && tar xzf ./downloads.tgz
    2. Install the dependencies.
      yum install $(ls /tmp/downloads/*.rpm)
Return to the procedure you were performing before turning to this appendix and retry the yum install command that failed previously.