Reconstruire la base de données RPM
Il se peut, pour une raison ou pour une autre, que la base de données rpm de votre distribution (Red Hat, Fedora, CentOS ...) soit érronée et vous empêche d'installer de nouveaux logiciels. Voici donc une astuce qui permet de la reconstruire en cas de problème.
Le plus souvent, ce problème se traduira par un message similaire à celui-ci, en cas d'utilisation de la commande rpm :
# rpm -Uvh monRpm.rpm
warning: waiting for transaction lock on /var/lib/rpm/__db.000
error: can't create transaction lock on /var/lib/rpm/__db.000
Ou encore, si on utilise yum, on pourra rester bloqué sur cette étape indéfiniment :
...
Running Transaction Test
La solution consistera alors à détruire l'intégralité de cette base via la commande :
rm -f /var/lib/rpm/__db*
Puis on lancera sa reconstruction comme ceci :
rpm --rebuilddb
8 Commentaires pour "Reconstruire la base de données RPM"
Flux des commentaires de cet article Ajouter un commentaireL'option est rpm --rebuilddb
@Herrib : tu as raison, j'ai corrigé l'erreur. Merci.
il faut vraiment que je me remette à linux, car je vois sur ton site trop d'astuce qui dégrossisse un peu la mise en jour de prog sur un système linux.
Tu pourrais me dire si la version de Mandriva One 2007 Spring est un bon compromis pour revenir à ces systèmes?
@Linkerman : revenir en douceur à Linux est une excellent initiative, surtout que le système à beaucoup évolué. Je te conseillerais d'attendre quelques jours, il me semble que Mandriva 2008 devrait bientôt sortir.
Sache que tu as également d'autres distributions qui sont un bon choix pour redémarrer : Fedora, OpenSuse, Ubuntu ...
Merci je vais attendre alors, mais j'étais habitué soit à la fac à RED HAT, soit à free bsd mais pas assez passé de temps dessus, puis mandrake que j'ai bien suivi il y a 3ans, puis ayant que très peu d'utilisateur autour de moi sur linux j'ai zappé ma partition ;(
mais là je suis décidé à m'y remettre pour pimenter mes applications...
Pour fedora,ubuntu je n'ai jamais compris ce qui différait : une histoire de package avec + ou - des programmes ? car le noyau c'est tjs le mm unix, mais je m'y perds un peu...
@Linkerman : fedora est un dérivé de redhat, Ubuntu est un dérivé de debian, c'est surtout là qu'est la différence.
merci je vais me documenter
Eh bien ces commandes sont toujours efficaces sous Mageia 6-64 le 28/07/2017...