search
top

Reparer la base RPM lorsqu’elle est corrompue

Lorsque la base rpmdb renvoie l’erreur suivante :

rpmdb: Lock table is out of available locker entries
rpmdb: Unknown locker ID: 7799
erreur: erreur db4(22) de dbenv->close: Argument invalide
erreur: ne peut ouvrir l'index Packages en utilisant db3 - Ne peut allouer de la mémoire (12)
erreur: impossible d'ouvrir la base de données Package dans /var/lib/rpm

Vous devez faire une backup de celle ci :

tar cvzf rpmdb-backup.tar.gz /var/lib/rpm

Effacer les fichier correspondant a la base corrompue :

rm /var/lib/rpm/__db.00*

Reconstruire la base :

rpm --rebuilddb

Puis verifier le bon fonctionnement de celle ci :

rpm -qa | sort

Lister les RPM installé

Pour lister les RPM installés :

rpm -qa

Pour afficher les detail d’un rpm :

rpm -qi postfix

Vous pouvez par la suite rediriger ce qui est afficher dans un fichier avec

> votre_fichier

Commandes pour utilisez des RPM

La commande rpm est l’outil de base pour la gestion des packages, elle permet notamment l’installation, la suppression, la compilation, la vérification des packages.

  • Met à jour (ou installe) le package « package » en mode verbeux (-v) avec affichage de la progression (-h).

rpm -e package

  • Désinstalle le package « package ». Ici l’extension n’apparaît pas puisque celle-ci se réfère à un nom de fichier. Une fois le package installé, on s’y réfère sans l’extension.

rpm -q package

  • Recherche la version installée du package « package ». Le nom du package fourni doit être le nom exact. Si le nom n’est pas connu exactement, on peut utiliser l’option -a pour afficher la liste de tous les packages installés, et éventuellement utiliser un grep pour trouver ce que l’on cherche.

rpm -qa | grep pack

  • Pour trouver de quel package provient un fichier sur le disque on utilisera :

rpm -qf /chemin/vers/le/fichier

  • Inversement, si l’on veut connaître la liste des fichiers installés par un package, on utilisera, respectivement pour un package installé et pour un package non installé :

rpm -ql package
rpm -qlp package.i386.rpm

  • Pour afficher les informations concernant le package, à savoir notamment son auteur, sa date de création, sa licence ainsi qu’un résumé de ses fonctionnalités

rpm -qi package

  • Pour vérifier l’intégrité des fichiers présents sur la machine par rapport aux fichiers initiaux.

rpm -V package

top