Gene Heskett wrote:
Now what the heck do I do?
Dumb answer on my part, but it works for me. Reboot into runlevel 1 and
try to rebuild rpm from single user mode. This process worked for me. I
however removed any __db* files that either rpm or rpmrebuild lists
after locating the __db* files before attempting a rebuilding of the
database.
Humm, I've tried that, without the runlevel 1, 3 times now, and I have 3
new rpm directories that seem to have copied the __db.001 and __db.002 db
files ok, but __db.000 and db.003 aren't transferred. I let it sit for
an hour the 2nd time before I killed it, the last attempt has not
returned to the cli, and I just killed it with htop. When I woke up this
morning I had several cron driven processes involving rpm all hung too.
So this is what I have now, what should I nuke before this next try at
runlevel 1?
First when you get into runlevel 1, run updatedb which may take a bit of
time depending upon how long the utility has been dormant. Afterwards,
nuke all the __db* files below if they still exist.
Next you run locate __db to find all the __db.* files and then delete
the files. When you get rid of any __db.* files littering the system,
you rum rpm --rebuilddb until it completes.
From looking through the listings, the file sizes seem to all be the
same. Of course your rpm version of the Packages file is quite a bit
larger than the rebuild entries that lock up at no progress.
Note below the directory listing all of the rpmrebuilddb garbage left on
my system. You may or may not decide to follow my advice. :-)
The 5597 version seems to be my last run of rpmrebuilddb.
[root@coyote ~]# ls -lR /var/lib/rpm*
/var/lib/rpm:
total 74328
-rw-r--r-- 1 root root 0 Nov 30 07:35 __db.000
-rw-r--r-- 1 root root 24576 Nov 30 06:27 __db.001
-rw-r--r-- 1 root root 1318912 Nov 30 06:27 __db.002
-rw-r--r-- 1 root root 450560 Nov 30 06:27 __db.003
-rw-r--r-- 1 rpm rpm 52453376 Dec 4 00:43 Packages
/var/lib/rpmrebuilddb.11829:
total 48
-rw-r--r-- 1 root root 24576 Dec 4 03:52 __db.001
-rw-r--r-- 1 root root 1318912 Dec 4 03:52 __db.002
-rw-r--r-- 1 root root 12288 Dec 4 03:52 Packages
/var/lib/rpmrebuilddb.23254:
total 48
-rw-r--r-- 1 root root 24576 Dec 4 02:13 __db.001
-rw-r--r-- 1 root root 1318912 Dec 4 02:13 __db.002
-rw-r--r-- 1 root root 12288 Dec 4 02:13 Packages
/var/lib/rpmrebuilddb.27690:
total 48
-rw-r--r-- 1 root root 24576 Dec 4 02:34 __db.001
-rw-r--r-- 1 root root 1318912 Dec 4 02:34 __db.002
-rw-r--r-- 1 root root 12288 Dec 4 02:34 Packages
locate rpmrebuilddb
/var/lib/rpmrebuilddb.3088
/var/lib/rpmrebuilddb.3229
/var/lib/rpmrebuilddb.5597
/var/lib/rpmrebuilddb.6014
/var/lib/rpmrebuilddb.6020
/var/lib/rpmrebuilddb.3088/Basenames
/var/lib/rpmrebuilddb.3088/Conflictname
/var/lib/rpmrebuilddb.3088/Dirnames
/var/lib/rpmrebuilddb.3088/Filemd5s
/var/lib/rpmrebuilddb.3088/Group
/var/lib/rpmrebuilddb.3088/Installtid
/var/lib/rpmrebuilddb.3088/Name
/var/lib/rpmrebuilddb.3088/Packages
-rw-r--r-- 1 root root 299008 Nov 19 19:00
/var/lib/rpmrebuilddb.3088/Providename
/var/lib/rpmrebuilddb.3088/Provideversion
/var/lib/rpmrebuilddb.3088/Requirename
/var/lib/rpmrebuilddb.3088/Requireversion
/var/lib/rpmrebuilddb.3088/Sha1header
/var/lib/rpmrebuilddb.3088/Sigmd5
/var/lib/rpmrebuilddb.3229/Basenames
/var/lib/rpmrebuilddb.3229/Conflictname
/var/lib/rpmrebuilddb.3229/Dirnames
/var/lib/rpmrebuilddb.3229/Filemd5s
/var/lib/rpmrebuilddb.3229/Group
/var/lib/rpmrebuilddb.3229/Installtid
/var/lib/rpmrebuilddb.3229/Name
/var/lib/rpmrebuilddb.3229/Packages
-rw-r--r-- 1 root root 42295296 Nov 9 18:19
/var/lib/rpmrebuilddb.3229/Providename
/var/lib/rpmrebuilddb.3229/Provideversion
/var/lib/rpmrebuilddb.3229/Pubkeys
/var/lib/rpmrebuilddb.3229/Requirename
/var/lib/rpmrebuilddb.3229/Requireversion
/var/lib/rpmrebuilddb.3229/Sha1header
/var/lib/rpmrebuilddb.3229/Sigmd5
/var/lib/rpmrebuilddb.3229/Triggername
/var/lib/rpmrebuilddb.5597/Basenames
/var/lib/rpmrebuilddb.5597/Conflictname
/var/lib/rpmrebuilddb.5597/Dirnames
/var/lib/rpmrebuilddb.5597/Filemd5s
/var/lib/rpmrebuilddb.5597/Group
/var/lib/rpmrebuilddb.5597/Installtid
/var/lib/rpmrebuilddb.5597/Name
/var/lib/rpmrebuilddb.5597/Packages
-rw-r--r-- 1 root root 37421056 Nov 30 19:11
/var/lib/rpmrebuilddb.5597/Providename
/var/lib/rpmrebuilddb.5597/Provideversion
/var/lib/rpmrebuilddb.5597/Pubkeys
/var/lib/rpmrebuilddb.5597/Requirename
/var/lib/rpmrebuilddb.5597/Requireversion
/var/lib/rpmrebuilddb.5597/Sha1header
/var/lib/rpmrebuilddb.5597/Sigmd5
/var/lib/rpmrebuilddb.5597/Triggername
/var/lib/rpmrebuilddb.5597/__db.001
/var/lib/rpmrebuilddb.5597/__db.002
/var/lib/rpmrebuilddb.6014/Basenames
/var/lib/rpmrebuilddb.6014/Dirnames
/var/lib/rpmrebuilddb.6014/Filemd5s
/var/lib/rpmrebuilddb.6014/Group
/var/lib/rpmrebuilddb.6014/Installtid
/var/lib/rpmrebuilddb.6014/Name
/var/lib/rpmrebuilddb.6014/Packages
-rw-r--r-- 1 root root 229376 Oct 13 20:38
/var/lib/rpmrebuilddb.6014/Providename
/var/lib/rpmrebuilddb.6014/Provideversion
/var/lib/rpmrebuilddb.6014/Requirename
/var/lib/rpmrebuilddb.6014/Requireversion
/var/lib/rpmrebuilddb.6014/Sha1header
/var/lib/rpmrebuilddb.6014/Sigmd5
/var/lib/rpmrebuilddb.6014/Triggername
/var/lib/rpmrebuilddb.6020/Packages
-rw-r--r-- 1 root root 12288 Oct 13 20:39
--
If we all work together, we can totally disrupt the system.
I think we've succeeded in this case. :(
Hopefully we are contributing more to resolving this problem. It is
determined that the database is getting in a sad state. The error should
be recoverable in some way.
I would advice you to install the rpm from Tony, but rpm is needed in
that case. :-(
Jim
--
Aren't we lucky our documentation is so sparse noone can accuse us of being
inconsistent? 8)
- Rusty Russell on linux-kernel