Reconstruire la base de données RPM


marteau
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


7 Commentaires pour "Reconstruire la base de données RPM"

Flux des commentaires de cet article Ajouter un commentaire
  •  

    L'option est rpm --rebuilddb

    RépondreRépondre
    herrib , le 8 octobre 2007 à 19:14
  •  

    @Herrib : tu as raison, j'ai corrigé l'erreur. Merci.

    RépondreRépondre
    pti-seb , le 8 octobre 2007 à 20:24
  •  

    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?

    RépondreRépondre
    linkerman , le 9 octobre 2007 à 02:20
  •  

    @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 ...

    RépondreRépondre
    pti-seb , le 9 octobre 2007 à 08:55
  •  

    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...

    RépondreRépondre
    linkerman , le 9 octobre 2007 à 14:17
  •  

    @Linkerman : fedora est un dérivé de redhat, Ubuntu est un dérivé de debian, c'est surtout là qu'est la différence.

    RépondreRépondre
    pti-seb , le 9 octobre 2007 à 14:36
  •  

    merci je vais me documenter

    RépondreRépondre
    linkerman , le 9 octobre 2007 à 19:20
 

Ajouter un commentaire

actualité android apache apple astuce astuces bash bilboblog blog boot chrome clavier commande commandes conky date debian Desktop développement elementary exploit faille fedora firefox flash gimp gnome google graphique Graphisme hack hacking Hardware humour intel internet iphone jailbreak Jeux Kde kernel libre Linux log logiciels Logiciels Libres lucid lynx maemo mail maquette metasploit microsoft mobile mockup monitoring mozilla multi-touch musique mysql n900 nautilus nokia noyau openoffice open source password photos php Planet publicité red hat redhat rpm réseau screenshot script serveur serveurs shell sql ssh statistiques sysadmin system Sécurité thème tux-planet tv twitter ubuntu unity vidéo vidéos vlc voyage wallpaper windows wordpress yum