Red Hat Bugzilla – Bug 111230
Segfault when using RPM commands
Last modified: 2007-04-18 12:59:52 EDT
From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Description of problem:
Running any RPM commands -- query, rebuilddb, erase, etc. -- results
in a Segmentation Fault like this:
error: rpmdbNextIterator: skipping h# 952 Header V3 DSA
signature: BAD, key
I have tried deleting the RPM lock files, rebuilding the database,
and even using doing a dump/load to recreate the Packages file (as
documented at http://www.rpm.org/hintskinks/repairdb/
It appears there's a conflict between version of RPM and db4-utils
installed, as running "/usr/bin/db_verify Packages" reports the
db_verify: Old or incorrect DB version; extraneous errors may result
db_verify: DB->verify: Packages: DB_VERIFY_BAD: Database verification
although executing "/usr/lib/rpm/rpmdb_verify Packages" runs
This is occurring on a system which had RH9 installed in June 2003
with all updates applied.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. run any rpm command, e.g. rpm -qi db4-utils
Actual Results: error: rpmdbNextIterator: skipping h# 952 Header
V3 DSA signature: BAD, key
Use /usr/lib/rpm/rpmdb_verify instead, you appear to
have db4-utils-4.0.14 installed.
Also try deleting the public key before --rebuilddb. Command
should be like (watch for typos):
rpm -e gpg-pubkey-db42a60e
Does that "fix"?
Created attachment 96277 [details]
Output log from rpm --rebuilddb
I was able to remove db4-utils with 'rpm -e' today, although
using 'rpm -e' was failing with a segmentation fault yesterday. So,
db4-utils is now gone.
I removed the pubkey per the instructions and tried --rebuilddb which
failed with the same segmentation fault. I also found other gpg-
pubkey packages and removed them.
rpmdb_verify shows the Packages file is OK, but I recreated it with
rpmdb_dump and rpmdb_load just in case. The segfault still appears.
Please see attachment for output from 'rpmdb --rebbuilddb'
*** This bug has been marked as a duplicate of 111541 ***
Hmmm I don't believe the pubkey is removed.
What does rpm -q gpg-pubkey say?
"rpm -q gpg-pubkey" reports:
error: rpmdbNextIterator: skipping h# 953 Header V3 DSA
signature: BAD, key ID 66534c2b
I saw that this was marked as a duplicate of bug 111541. I am using
the updated version of rpmdb_verify to check the database -- and it
reports the database is valid -- but the other rpm commands
themselves still don't seem to read the database correctly. Is there
something else I need to do to fix the database?
Rename the /var/lib/rpm/Pubkeys to do --nosignature
the hard way.
Then try "rpm -q gpg-pubkey" and or "rpm -qa | grep gpg-pubkey"
to verify if the key is still installed.
Those last steps, with an "rpm --rebuilddb" in-between, have resolved
Thanks for all the help!