database mess up

Panu Matilainen pmatilai at laiskiainen.org
Thu Jan 22 08:06:12 UTC 2009


On Wed, 21 Jan 2009, Patrick Dupre wrote:

> Hello,
>
> For a reason that I ignore my database is totallt mess up.
> rpm --rebuilddb only rebuild iy partially.
> The packages are installed, but rpm --rebuilddb does not see them.
> How can I recover them without resintalling them manually ?

Find the latest intact /var/log/rpmpkgs* file (ie one that got generated 
before the db got corrupted, file size should be a good indicator) and 
copy it somewhere safe, say /root/rpmpkgs.backup. Now you should be 
able to make fairly good recovery with something like:

# mv /var/lib/rpm /var/lib/rpm.busted
# mkdir /var/tmp/download; cd /var/tmp/download
# yumdownloader `sed -e "s/.rpm$//g" /root/rpmpkgs.backup`
# rpm -Uvh --notriggers --noscripts --justdb *.rpm

The question of course is, what got the database corrupted to begin with.
Did anything out of the ordinary happen at that time, like /var getting 
full? Segfaults logged in /var/log/messages*? What filesystem is /var on?

 	- Panu -




More information about the fedora-list mailing list