RPM-Datenbank nach größerem CentOS Update hinüber

Bei größeren Updates von RHEL 3.x bzw. CentOS 3.x kann es vorkommen, dass sich die RPM-Datenbank verabschiedet. Dies ist an der folgenden Fehlermeldung beim Verwenden von YUM zu erkennen:

 1# yum install foo bar
 2rpmdb: Program version 4.2 doesn't match environment version
 3error: db4 error(22) from dbenv->open: Das Argument ist ungültig
 4error: cannot open Packages index using db3 - Das Argument ist ungültig (22)
 5error: cannot open Packages database in /var/lib/rpm
 6Traceback (most recent call last):
 7  File "/usr/bin/yum", line 30, in ?
 8    yummain.main(sys.argv[1:])
 9  File "/usr/share/yum/yummain.py", line 163, in main
10    (log, errorlog, filelog, conf, cmds) = parseCmdArgs(args)
11  File "/usr/share/yum/yummain.py", line 75, in parseCmdArgs
12    conf=yumconf(configfile=yumconffile)
13  File "/usr/share/yum/config.py", line 155, in __init__
14    self.yumvar['releasever'] = self._getsysver()
15  File "/usr/share/yum/config.py", line 285, in _getsysver
16    idx = ts.dbMatch('provides', self.distroverpkg)
17TypeError: rpmdb open failed

Abhilfe schafft das händische Löschen des RPM-Katalogcaches und nachträgliche Neuanlegen des selbigen:

1# rm -rf /var/lib/rpm/__db*
2# rpm --rebuilddb