Bonjour,
j'ai voulu faire une mise de mon système ce soir, je fais donc un yum update et il me balance une erreur :
[root@mat-desktop ~]# yum update
Modules complémentaires chargés : refresh-packagekit
rpmdb: Thread/process 3338/139765273958128 failed: Thread died in Berkeley DB library
erreur: erreur db4(-30975) de dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
erreur: ne peut ouvrir l'index Packages en utilisant db3 -  (-30975)
erreur: impossible d'ouvrir la base de données Package dans /var/lib/rpm
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in <module>
    yummain.user_main(sys.argv[1:], exit_code=True)
  File "/usr/share/yum-cli/yummain.py", line 229, in user_main
    errcode = main(args)
  File "/usr/share/yum-cli/yummain.py", line 84, in main
    base.getOptionsConfig(args)
  File "/usr/share/yum-cli/cli.py", line 184, in getOptionsConfig
    enabled_plugins=self.optparser._splitArg(opts.enableplugins))
  File "/usr/lib/python2.5/site-packages/yum/__init__.py", line 192, in _getConfig
    self._conf = config.readMainConfig(startupconf)
  File "/usr/lib/python2.5/site-packages/yum/config.py", line 774, in readMainConfig
    yumvars['releasever'] = _getsysver(startupconf.installroot, startupconf.distroverpkg)
  File "/usr/lib/python2.5/site-packages/yum/config.py", line 844, in _getsysver
    idx = ts.dbMatch('provides', distroverpkg)
TypeError: rpmdb open failed
Je me dis, allez un p'tit yum clean all et c'est fini, et ben non, même erreur.
Par le mode graphique ça change rien (je m'en doutais bien ^^)

Quelqu'un connaitrait-il la solution ? sachant que google ne m'est pas d'un grand secours...

merci d'avance

mat'
C'est la base de données rpmdb qui semble avoir pris une claque (pourquoi ?).
rm -rf /var/lib/rpm/__*
rpm -v --rebuilddb

Pour plus de détails vor ICI
Essaye de faire :
rm -f /var/lib/rpm/__db*
rpm --rebuilddb
merci à tous les deux ça marche.
Si j'ai bien compris le truc :
on supprime la vieille base de données rpmd et on en recréé une nouvelle ?

Et donc rpmdb c'est la base de données qui contient la liste des rpms installés sur le système ?
Et donc rpmdb c'est la base de données qui contient la liste des rpms installés sur le système ?
man rpm wrote:.......
OPTIONS DE RECONSTRUCTION DE BASE DE DONNÉES
La forme générale d'une commande de reconstruction d'une base de données rpm est

rpm {--initdb|--rebuilddb} [-v] [--dbpath RÉPERTOIRE] [--root RÉPERTOIRE]

Utilisez --initdb pour reconstruire une nouvelle base de données ; utilisez --rebuilddb pour reconstruire les index de la base de données à partir des en-
têtes des paquetages installés.
:roll:
Quel doué que je suis, même pas pensé à regarder le man.

merci 😉