1

On RHEL 7 when updating with YUM after some time the YUM transaction didn't finish correctly as the connection to the server was interrupted and the YUM session didn't run in screen.

--> Processing Conflict: firewalld-0.4.4.4-6.el7.noarch conflicts selinux-policy < 3.13.1-118.el7
--> Finished Dependency Resolution
You could try using --skip-broken to work around the problem
** Found 157 pre-existing rpmdb problem(s), 'yum check' output follows:
audit-2.7.6-3.el7.x86_64 is a duplicate with audit-2.6.5-3.el7_3.1.x86_64
audit-libs-2.7.6-3.el7.x86_64 is a duplicate with audit-libs-2.6.5-3.el7_3.1.x86_64
audit-libs-python-2.7.6-3.el7.x86_64 is a duplicate with audit-libs-python-2.6.5-3.el7_3.1.x86_64
bash-4.2.46-29.el7_4.x86_64 is a duplicate with bash-4.2.46-21.el7_3.x86_64
32:bind-libs-9.9.4-51.el7_4.2.x86_64 is a duplicate with 32:bind-libs-9.9.4-50.el7_3.1.x86_64
32:bind-libs-lite-9.9.4-51.el7_4.2.x86_64 is a duplicate with 32:bind-libs-lite-9.9.4-50.el7_3.1.x86_64
32:bind-license-9.9.4-51.el7_4.2.noarch is a duplicate with 32:bind-license-9.9.4-50.el7_3.1.noarch
...

So the transaction didn't complete and some packages are listed in 2 versions.

In this state the yum update reports:

# yum update
Loaded plugins: product-id, search-disabled-repos
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction, or "yum-complete-transaction --cleanup-only" and "yum history redo last", first to finish them. If those don't work you'll have to try removing/installing packages by hand (maybe package-cleanup can help).

And the transaction fails.

See the solution how it was possible to clear fix this issue.

1 Answer 1

3

To fix the issue it is possible to use following command:

$ yum history redo force-reinstall last --setopt=protected_multilib=false

That says yum to perform the last transaction once again with force-reinstall parameter. The --setopt=protected_multilib=false may not be required in all cases (in mine it was, because of grub2 package problem).

The transaction may report some errors on packages listed twice during the process, however it finishes and the state of RPMs seems to be correct.

However the yum still complains about unfinished transactions (but doesn't fail any more). It's safe to remove them now with:

$ yum-complete-transaction --cleanup-only

As of now YUM is operational as before.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .