Description of problem: System crashed while running dnf upgrade. Now my system is really broken. Boots, but virtualization is broken, duplicate packages installed, and I cannot fix it. Maybe something to do with dnf and libssh/libssh-config? Cannot seem to resolve conflict with these two packages and cannot remove because dnf depends on it? All dnf commands fail due to conflicts. rpm --rebuilddb has no effect. Version-Release number of selected component (if applicable): dnf-4.2.7-2.fc30.noarch How reproducible: Unknown Steps to Reproduce: 1. dnf upgrade Additional info: $ sudo -i dnf check --duplicates SDL2-2.0.9-3.fc30.x86_64 is a duplicate with SDL2-2.0.10-1.fc30.x86_64 abrt-libs-2.12.1-1.fc30.x86_64 is a duplicate with abrt-libs-2.12.2-1.fc30.x86_64 curl-7.65.3-1.fc30.x86_64 is a duplicate with curl-7.65.3-2.fc30.x86_64 ebtables-legacy-2.0.10-35.fc30.x86_64 is a duplicate with ebtables-legacy-2.0.10-36.fc30.x86_64 glib2-2.60.5-1.fc30.i686 is a duplicate with glib2-2.60.5-1.fc30.x86_64 glib2-2.60.5-1.fc30.i686 is a duplicate with glib2-2.60.6-1.fc30.x86_64 glusterfs-client-xlators-6.3-1.fc30.x86_64 is a duplicate with glusterfs-client-xlators-6.4-1.fc30.x86_64 glusterfs-libs-6.3-1.fc30.x86_64 is a duplicate with glusterfs-libs-6.4-1.fc30.x86_64 java-1.8.0-openjdk-1:1.8.0.212.b04-0.fc30.x86_64 is a duplicate with java-1.8.0-openjdk-1:1.8.0.222.b10-0.fc30.x86_64 java-1.8.0-openjdk-headless-1:1.8.0.212.b04-0.fc30.x86_64 is a duplicate with java-1.8.0-openjdk-headless-1:1.8.0.222.b10-0.fc30.x86_ 64 libcephfs2-2:14.2.1-2.fc30.x86_64 is a duplicate with libcephfs2-2:14.2.2-1.fc30.x86_64 libcurl-7.65.3-1.fc30.i686 is a duplicate with libcurl-7.65.3-1.fc30.x86_64 libcurl-7.65.3-1.fc30.i686 is a duplicate with libcurl-7.65.3-2.fc30.x86_64 libldb-1.5.4-1.fc30.x86_64 is a duplicate with libldb-1.5.5-1.fc30.x86_64 librados2-2:14.2.1-2.fc30.x86_64 is a duplicate with librados2-2:14.2.2-1.fc30.x86_64 librbd1-2:14.2.1-2.fc30.x86_64 is a duplicate with librbd1-2:14.2.2-1.fc30.x86_64 librepo-1.10.2-2.fc30.x86_64 is a duplicate with librepo-1.10.5-1.fc30.x86_64 libssh-0.8.7-1.fc30.i686 is a duplicate with libssh-0.8.7-1.fc30.x86_64 libssh-0.8.7-1.fc30.i686 is a duplicate with libssh-0.9.0-5.fc30.x86_64 mariadb-common-3:10.3.12-10.fc30.x86_64 is a duplicate with mariadb-common-3:10.3.16-1.fc30.x86_64 mariadb-connector-c-config-3.0.10-1.fc30.noarch is a duplicate with mariadb-connector-c-config-3.1.2-2.fc30.noarch mesa-filesystem-19.0.8-1.fc30.i686 is a duplicate with mesa-filesystem-19.0.8-1.fc30.x86_64 mesa-filesystem-19.0.8-1.fc30.i686 is a duplicate with mesa-filesystem-19.1.3-1.fc30.x86_64 mesa-khr-devel-19.0.8-1.fc30.x86_64 is a duplicate with mesa-khr-devel-19.1.3-1.fc30.x86_64 mesa-libgbm-19.0.8-1.fc30.i686 is a duplicate with mesa-libgbm-19.0.8-1.fc30.x86_64 mesa-libgbm-19.0.8-1.fc30.i686 is a duplicate with mesa-libgbm-19.1.3-1.fc30.x86_64 mesa-libglapi-19.0.8-1.fc30.i686 is a duplicate with mesa-libglapi-19.0.8-1.fc30.x86_64 mesa-libglapi-19.0.8-1.fc30.i686 is a duplicate with mesa-libglapi-19.1.3-1.fc30.x86_64 pcre2-10.33-6.fc30.i686 is a duplicate with pcre2-10.33-6.fc30.x86_64 pcre2-10.33-6.fc30.i686 is a duplicate with pcre2-10.33-9.fc30.x86_64 perl-Errno-1.29-436.fc30.x86_64 is a duplicate with perl-Errno-1.29-438.fc30.x86_64 perl-ExtUtils-Embed-1.35-436.fc30.noarch is a duplicate with perl-ExtUtils-Embed-1.35-438.fc30.noarch perl-IO-1.39-436.fc30.x86_64 is a duplicate with perl-IO-1.39-438.fc30.x86_64 perl-Module-CoreList-1:5.20190620-1.fc30.noarch is a duplicate with perl-Module-CoreList-1:5.20190720-1.fc30.noarch perl-SelfLoader-1.25-436.fc30.noarch is a duplicate with perl-SelfLoader-1.25-438.fc30.noarch perl-devel-4:5.28.2-436.fc30.x86_64 is a duplicate with perl-devel-4:5.28.2-438.fc30.x86_64 perl-interpreter-4:5.28.2-436.fc30.x86_64 is a duplicate with perl-interpreter-4:5.28.2-438.fc30.x86_64 perl-libs-4:5.28.2-436.fc30.x86_64 is a duplicate with perl-libs-4:5.28.2-438.fc30.x86_64 perl-macros-4:5.28.2-436.fc30.x86_64 is a duplicate with perl-macros-4:5.28.2-438.fc30.x86_64 perl-threads-shared-1.59-2.fc30.x86_64 is a duplicate with perl-threads-shared-1.59-3.fc30.x86_64 php-common-7.3.7-2.fc30.x86_64 is a duplicate with php-common-7.3.8-1.fc30.x86_64 selinux-policy-3.14.3-42.fc30.noarch is a duplicate with selinux-policy-3.14.3-43.fc30.noarch selinux-policy-targeted-3.14.3-42.fc30.noarch is a duplicate with selinux-policy-targeted-3.14.3-43.fc30.noarch syslinux-6.04-0.8.fc28.x86_64 is a duplicate with syslinux-6.04-0.12.fc30.x86_64 syslinux-nonlinux-6.04-0.8.fc28.noarch is a duplicate with syslinux-nonlinux-6.04-0.12.fc30.noarch systemd-libs-241-9.gitb67ecf2.fc30.i686 is a duplicate with systemd-libs-241-10.git511646b.fc30.x86_64 systemd-libs-241-9.gitb67ecf2.fc30.i686 is a duplicate with systemd-libs-241-9.gitb67ecf2.fc30.x86_64 whois-nls-5.4.3-1.fc30.noarch is a duplicate with whois-nls-5.5.0-1.fc30.noarch xscreensaver-base-1:5.42-2.fc30.x86_64 is a duplicate with xscreensaver-base-1:5.43-1.fc30.x86_64 xscreensaver-extras-base-1:5.42-2.fc30.x86_64 is a duplicate with xscreensaver-extras-base-1:5.43-1.fc30.x86_64 $ rpm -Va --nofiles --nodigest Unsatisfied dependencies for libssh-0.9.0-5.fc30.x86_64: libssh < 0.9.0-3 is obsoleted by (installed) libssh-config-0.9.0-5.fc30.noarch Unsatisfied dependencies for libssh-0.8.7-1.fc30.x86_64: libssh < 0.9.0-3 is obsoleted by (installed) libssh-config-0.9.0-5.fc30.noarch Unsatisfied dependencies for libssh-0.8.7-1.fc30.i686: libssh < 0.9.0-3 is obsoleted by (installed) libssh-config-0.9.0-5.fc30.noarch Unsatisfied dependencies for libssh-config-0.9.0-5.fc30.noarch: libssh < 0.9.0-3 is obsoleted by (installed) libssh-config-0.9.0-5.fc30.noarch
To resolve the situation you could try: dnf remove --duplicates
Sorry, I thought that was obvious; I did try that. As I said, all dnf commands are meet with the same response: conflicts. dnf remove --duplicates ... Running transaction check Transaction check succeeded. Running transaction test Error: Transaction check error: file /usr/lib64/libnss_myhostname.so.2 from install of systemd-libs-241-10.git511646b.fc30.x86_64 conflicts with file from package systemd-libs-241-9.gitb67ecf2.fc30.x86_64 file /usr/lib64/libnss_resolve.so.2 from install of systemd-libs-241-10.git511646b.fc30.x86_64 conflicts with file from package systemd-libs-241-9.gitb67ecf2.fc30.x86_64 file /usr/lib64/libnss_systemd.so.2 from install of systemd-libs-241-10.git511646b.fc30.x86_64 conflicts with file from package systemd-libs-241-9.gitb67ecf2.fc30.x86_64 file /usr/lib64/libsystemd.so.0.25.0 from install of systemd-libs-241-10.git511646b.fc30.x86_64 conflicts with file from package systemd-libs-241-9.gitb67ecf2.fc30.x86_64 file /usr/lib64/libudev.so.1.6.13 from install of systemd-libs-241-10.git511646b.fc30.x86_64 conflicts with file from package systemd-libs-241-9.gitb67ecf2.fc30.x86_64 file /usr/lib/rpm/macros.d/macros.selinux-policy from install of selinux-policy-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-3.14.3-42.fc30.noarch file /usr/lib64/libpcre2-8.so.0.8.0 from install of pcre2-10.33-9.fc30.x86_64 conflicts with file from package pcre2-10.33-6.fc30.x86_64 file /usr/lib64/libpcre2-posix.so.2.0.2 from install of pcre2-10.33-9.fc30.x86_64 conflicts with file from package pcre2-10.33-6.fc30.x86_64 file /usr/bin/gapplication from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/bin/gdbus from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/bin/gio from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/bin/gio-launch-desktop from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/bin/gio-querymodules-64 from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/bin/glib-compile-schemas from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/bin/gsettings from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/lib64/libgio-2.0.so.0 from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/lib64/libglib-2.0.so.0 from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/lib64/libgmodule-2.0.so.0 from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/lib64/libgobject-2.0.so.0 from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/lib64/libgthread-2.0.so.0 from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/doc/glib2/NEWS from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gapplication.1.gz from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gdbus.1.gz from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gio-querymodules.1.gz from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gio.1.gz from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/glib-compile-schemas.1.gz from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gsettings.1.gz from install of glib2-2.60.6-1.fc30.x86_64 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /etc/selinux/targeted/.policy.sha512 from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /etc/selinux/targeted/contexts/files/file_contexts from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /etc/selinux/targeted/policy/policy.31 from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/selinux/targeted/default/active/file_contexts from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/selinux/targeted/default/active/modules/100/apache/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/selinux/targeted/default/active/modules/100/dhcp/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/selinux/targeted/default/active/modules/100/lsm/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/selinux/targeted/default/active/modules/100/nut/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/selinux/targeted/default/active/modules/100/systemd/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/selinux/targeted/default/active/modules/100/virt/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/selinux/targeted/default/active/policy.kern from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/selinux/targeted/default/active/policy.linked from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/file_contexts from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/apache/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/apache/hll from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/dhcp/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/dhcp/hll from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/lsm/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/lsm/hll from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/nut/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/nut/hll from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/systemd/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/systemd/hll from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/virt/cil from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/modules/100/virt/hll from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /var/lib/selinux/targeted/active/policy.kern from install of selinux-policy-targeted-3.14.3-43.fc30.noarch conflicts with file from package selinux-policy-targeted-3.14.3-42.fc30.noarch file /usr/share/doc/glib2/NEWS from install of glib2-2.60.6-1.fc30.i686 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gapplication.1.gz from install of glib2-2.60.6-1.fc30.i686 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gdbus.1.gz from install of glib2-2.60.6-1.fc30.i686 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gio-querymodules.1.gz from install of glib2-2.60.6-1.fc30.i686 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gio.1.gz from install of glib2-2.60.6-1.fc30.i686 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/glib-compile-schemas.1.gz from install of glib2-2.60.6-1.fc30.i686 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 file /usr/share/man/man1/gsettings.1.gz from install of glib2-2.60.6-1.fc30.i686 conflicts with file from package glib2-2.60.5-1.fc30.x86_64 Error Summary ------------- (blank) While my system is actually running, this is very serious. I have a lot of experience and this is one of my nightmares. I fixed something like this a couple years ago, but I forgot if there were any tricks that helped. I even checked my notes, and I don't have anything I can find about this situation. I have been able to completely remove and reinstall some sets of non-essential packages, which has reduced the number of conflicts by about half. But I don't know how to deal with pcre2 and systemd. Please help.
Is one of the options to delete RPM DB and then rebuild from scratch? Sounds like something that could be done, but I might be making it up.
Enough things are broken, like virtualization, that the system is not fully functional. I need to fix this, somehow. I could really use some advice. I've researched it, but nothing I have found seems to work.
Okay, I think I muddled through it, bit by bit. Mostly, I used distro-sync, which seemed to be able to detect when reinstall of some packages would be the correct action. That was helpful. The hardest part was libssh, which I forcibly removed with rpm, but that left dnf inoperable. I guess I should have used the RPM options that just removed it from the database. Luckily, the rpm was in DNF cache and I just installed it. Thanks. I learned my lesson, though. I didn't realize that GNOME software was staging upgrade packages for reboot. I just always used CLI to do updates. Would be nice if DNF could stage like that. Is that an undocumented feature or something?
Normally I would recommend to try "dnf remove --duplicates". But at the present time the command is not fully functional. It requires https://github.com/rpm-software-management/dnf/pull/1478. What works: Get NAMES of duplicates from "dnf repoquery --duplicates" or "rpm -q <package name like systemd>" remove older version of package: "rpm -e <full name like systemd-241-12.git1e19bcd.fc30.x86_64>" To ensure dependencies reinstall the remaining package version: "dnf reinstall <package name like systemd>" Alternatively: To help you I create a copr repository with upstream dnf + patch required to resolve your case (https://github.com/rpm-software-management/dnf/pull/1478). To enable it just run as a root `dnf copr enable jmracek/remove`. After installing of dnf-4.2.11-1.git.8938.b92b807.fc30 run `dnf remove --duplicates` or in case that it doesn't help use `dnf shell` with dnf-shell commands `remove --duplicates`, `upgrade`, `run`. Did it help?
*** This bug has been marked as a duplicate of bug 1674296 ***
Thanks for explaining about the --duplicates option. I'm glad that there is hope for this solution path in the future. I'm very sorry for the trouble; I hope you didn't create that copr just for me. As I reported, I manually hacked my way through this. If I run into this problem again, I will surely try your copr, but at present, I cannot test it for you.