Articles in this section

Yum fails to resolve dependencies in Plesk for CentOS/RHEL: package is a duplicate with

Plesk for Linux kb: technical

Applicable to:

  • Plesk for Linux

Symptoms

  • Updating Plesk or system packages via Plesk fails:

    PLESK_ERROR: Update failed.
    INFO: pum is called with arguments: ['--update', '--json', '--', 'binutils', 'dnsmasq', 'docker-engine', 'initscripts', 'iptables', 'kexec-tools', 'libgomp', 'microcode_ctl', 'net-snmp', 'plesk-git-http', 'polkit', 'tuned', 'wget', 'wpa_supplicant']


    PLESK_ERROR: ERROR: [u'ERROR with transaction check vs depsolve:', 'systemd = 219-67.el7_7.2 is needed by (installed) systemd-sysv-219-67.el7_7.2.x86_64', 'systemd = 219-67.el7_7.2 is needed by (installed) systemd-sysv-219-67.el7_7.2.x86_64', 'firewalld-filesystem = 0.6.3-2.el7_7.2 is needed by firewalld-0.6.3-2.el7_7.2.noarch', 'python-firewall = 0.6.3-2.el7_7.2 is needed by firewalld-0.6.3-2.el7_7.2.noarch', 'device-mapper-event-libs = 7:1.02.158-2.el7_7.2 is needed by (installed) device-mapper-event-7:1.02.158-2.el7_7.2.x86_64', 'device-mapper-event-libs = 7:1.02.158-2.el7_7.2 is needed by (installed) device-mapper-event-7:1.02.158-2.el7_7.2.x86_64']
    ERROR: Exited with returncode 1.


    CONFIG_TEXT: ERROR: Your package system contains duplicated packages, which can lead to broken Plesk update:
    psa-libxml-proxy-2.9.7-2.centos.7+p18.0.23.0+t191224.1303.x86_64
    psa-libxml-proxy-2.9.7-2.centos.7+p18.0.27.0+t200427.1027.x86_64
    plesk-dovecot-core-2.3.10-2.centos.7+p18.0.26.0+t200410.1427.x86_64
    plesk-dovecot-core-2.3.10-2.centos.7+p18.0.27.0+t200422.1107.x86_64

  • The following message is shown in the menu Websites & Domains > System Overview > Check for Updates > Install Updates:

    PLESK_WARN: Warning: Information on some packages might not be actual: inconsistencies were detected in the system's package manager database. Please resolve this issue manually.

  • The following error message appears in the log file /var/log/plesk/panel.log, where <package_name1> and <package_name2> can be any package name:

    CONFIG_TEXT: ERROR: Exited with returncode 1.
    ERR [panel] Task failed: id=19, pid=39949, type=pum-update-packages, error=2018-02-08 INFO: pum is called with arguments: ['--update', '--json', '--', <package_name1>, <package_name2>, ...]
    INFO: updating packages: <package_name1>, <package_name2>, ...
    ERROR: Test Transaction Errors: package <package_name1>-2.0.14-17.2.el7.x86_64 (which is newer than <package_name1>-2.0.14-17.el7.x86_64) is already installed
    package <package_name2>-2.8.0-5.el7_4.2.noarch (which is newer than <package_name2>-2.8.0-5.el7.noarch) is already installed
    ...

  • When updating the packages manually with the command yum update, the process fails due to package duplicates with the following error messages:

    CONFIG_TEXT: Error: Package: 1:<package_name1>-1.0.6-31.el7_2.x86_64 (@updates)
    Requires: <package_name1>-libnm(x86-64) = 1:1.0.6-31.el7_2
    Installed: 1:<package_name1>-libnm-1.8.0-11.el7_4.x86_64 (@updates)
    <package_name1>-libnm(x86-64) = 1:1.8.0-11.el7_4
    Available: 1:<package_name1>-libnm-1.8.0-9.el7.x86_64 (base)
    <package_name1>-libnm(x86-64) = 1:1.8.0-9.el7
    ...
    You could try using --skip-broken to work around the problem
    ** Found 47 pre-existing rpmdb problem(s), 'yum check' output follows:
    <package_name2>-5.6.27-centos7.16101710.x86_64 has missing requires of <package_name2> = ('0', '5.6.27', 'centos7.16101710')
    <package_name2>-5.6.33-centos7.18010913.x86_64 is a duplicate with <package_name2>-5.6.27-centos7.16101710.x86_64

Cause

Duplicated packages in the RPM database.

Note: The cause of this behavior is related to the incorrect operations that are done by the system's utility yum. Sometimes the packages might get duplicated, for example, due to the cached packages that were not cleaned correctly.

Resolution

Warning: It is strongly recommended to create a snapshot/backup of the server before applying the steps below.

  1. Connect to the Plesk server via SSH.

  2. Install the package yum-utils:

    # yum install yum-utils

  3. Find all duplicated packages with the command:

    # package-cleanup --dupes

  4. Remove duplicates using either of the following methods:

    • cleanup packages database:

      # package-cleanup --cleandupes

    • remove exact duplicate package manually (make sure that you are removing older version of package), for example:

      # rpm -e policycoreutils-2.0.83-19.47.el6_6.1.x86_64 --nodeps

  5. Re-run system updates via Plesk:

    # plesk sbin pum --update

Was this article helpful?

Comments

0 comments

Please sign in to leave a comment.