0

On one system I have two exact same entries in the RPM DB:

# rpm -qa | fgrep gvfs-fuse
gvfs-fuse-1.40.0-1.1.x86_64
gvfs-fuse-1.40.0-1.1.x86_64

There is apparently nothing that will help:

# rpm -e --justdb --nodeps gvfs-fuse-1.40.0-1.1.x86_64
error: "gvfs-fuse-1.40.0-1.1.x86_64" specifies multiple packages:
  gvfs-fuse-1.40.0-1.1.x86_64
  gvfs-fuse-1.40.0-1.1.x86_64

# rpm --rebuilddb

# rpm -qa | fgrep gvfs-fuse
gvfs-fuse-1.40.0-1.1.x86_64
gvfs-fuse-1.40.0-1.1.x86_64

Is there a way to specify a package to remove (from db) more specifically in order to select one of these?

1

you could remove both instances:

rpm -e --justdb --nodeps --allmatches gvfs-fuse-1.40.0-1.1.x86_64

and then reinstall the single rpm (which you would need to download in this case):

rpm -i --justdb --nodeps gvfs-fuse-1.40.0-1.1.x86_64.rpm

or if you don't mind that the files get reinstalled (and pre/post scripts executed again):

yum/zypper install gvfs-fuse-1.40.0-1.1
  • 1
    The rpm -i accepts filename, so it would be rpm -i --justdb --nodeps ./gvfs-fuse-1.40.0-1.1.x86_64.rpm – msuchy May 6 at 10:04
  • @msuchy you are right. Elaborated a little on that. – Chris Maes May 6 at 10:06
  • Thanks, the "--allmatches" trick worked! (Reinstalled the package without rpm). – Ned64 May 6 at 19:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.