[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: database mess up

On Thu, 22 Jan 2009, Craig White wrote:

On Fri, 2009-01-23 at 01:00 +0000, Patrick Dupre wrote:
On Thu, 22 Jan 2009, Panu Matilainen wrote:

On Wed, 21 Jan 2009, Patrick Dupre wrote:


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 -
It just end up with disk full !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
you have to fix that - there's no way you can have a working software
package system with a full disk - it just gets corrupted.

Disk getting full should not corrupt the database but give a hefty load of error messages about disk being full. Of course it wont function properly without sufficient space but corrupt it should not - doesn't mean there couldn't be bugs, those codepaths dont get exercised that often.

	- Panu -

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]