Le Mardi 17 Juin 2003 14:53, Troumad a �crit :

> Depuis, je ne peux les r�installer! Je dois avoir une merde dans mon
> gestionnaire de rpm!
> Comment ce r�pare-t-il?
Je peux pas te r�pondre pas � pas (manque de temps), mais j'ai eu une salet� 
de ce genre. Je te fais passer les mails correspondants. 
V�rifie d'abord si tu as des fichier  __db* dans  /var/lib/rpm/
Si oui, tu les supprimes.
A+

**********************************************************
Plus g�nant, c'est le rpm qui est dans les choux: (sous root), rpm -qa se 
bloque en plein milieu et ne me rend pas la main. (sous claude) c'est moins 
mauvais, il me rend la main apr�s avoir dit "Erreur de segmentation"

*****************************************************
J'essaierai de prendre une copie compl�te au cas o� ...
  cp -a /var/lib/rpm /var/lib/rpm-save
puis de suivre les instructions l�:
  http://www.rpm.org/hintskinks/repairdb/
et vraiment en d�sespoir de cause:
http://www.informatimago.com/linux/rpm-rebuilddb

**************************************************

Bon, j'ai regard�  sur l'URL (en anglais, donc je d�taille en fran�ais, �a 
peut servir pour les non anglophones) que tu m'as indiqu� et 
http://www.rpm.org/hintskinks/repairdb/ et j'ai trouv� quel premi�re chose � 
faire �tait:
rm -f /var/lib/rpm/__db*
Or, il me semble bien avoir vu __db2 et __db3 dans ce rep. Il n'y est plus. 
P� parce que j'ai tent� (r�ussi) de d�sinstaller (partiellement) le paquetage 
fautif avec gnorpm (avec quand m�me un message d'erreur disant que la 
database avait un pb). depuis je n'ai plus de segmentation fault quand je 
fais rpm -qa, mais j'ai cette ligne:
error: rpmdb: damaged header instance #746 retrieved, skipping.

Il est dit ensuite que tout ce qui a besoin d'�tre r�par� ce trouve dans 
/var/lib/rpm/Packages
Je continue donc � suivre les conseils en faisant une sauvegarde de 
/var/lib/rpm:
cd /var/lib
tar czvf /tmp/rpmdb.tar.gz rpm

(J'aurai pu faire cp -a /var/lib/rpm /var/lib/rpm-save)

Je me lance ensuite dans une v�rification avec:

#cd /var/lib/rpm
#db_verify Packages
db_verify: Overflow item incomplete on page 5354
db_verify: DB->verify: Packages: DB_VERIFY_BAD: Database verification failed

Visiblement, �a foire. Donc, je renomme mon Packages (on n'est jamais trop 
prudent, n'est-ce pas?)
#mv Packages Packages-ORIG

Ensuite je fais une manip qui est sens� r�parer (je croise les doigts)
# db_dump Packages-ORIG | db_load Packages

Ensuite, on me dit de lire toutes les en-tetes en faisant (Read all the 
headers in Packages by doing)
rpm -qa et de v�rifier s'il y a un segfault

Visiblement, il n'y en a pas. Un petit rpm -qa | grep seg et un rpm -qa | 
grep error me le confirme.

Donc, �a a l'air bon.

A la fin, ils recommande de faire un rpm --rebuilddb
Je le fais (tant que j'y suis j'essaye d'abord la commande de Michel 
#cp -a /var/lib/rpm /var/lib/rpm-save)
# rpm --rebuilddb
#rpm -qa      --> �a marche
Une petite v�rification pour v�rifier
diff -r /var/lib/rpm /var/lib/rpm-save/
Binary files /var/lib/rpm/.... /var/lib/rpm-save/... differ
Comme ce sont des binaires, impossible d'avoir le d�tail, mais visiblement le 
rpm --rebuilddb �tait n�cessaire.
A premi�re vue, tout a l'air de fonctionner. Un grand merci (un de plus) 
Michel et � la prochaine :)

PS: Sinon, la suite est l�, mais j'ai pas eu besoin (le temps d'essayer):
http://www.informatimago.com/linux/rpm-rebuilddb

C'est dans le cas o� les commandes suivantes ne fonctionnent pas:
# rpm -q -a
     failed to open //var/lib/rpm/packages.rpm

      rpmQuery: rpmdbOpen() failed
     [EMAIL PROTECTED] pascal]# rpm --rebuilddb
     failed to open //var/lib/rpm/packages.rpm

     [EMAIL PROTECTED] pascal]# rpm --initdb
     [EMAIL PROTECTED] pascal]# rpm -q -a
     failed to open //var/lib/rpm/packages.rpm

     rpmQuery: rpmdbOpen() failed

********************************************************

-- 
[EMAIL PROTECTED]                       http://astuce.linux.free.fr
Veuillez ne pas me joindre de textes aux formats Word ou PowerPoint, mais 
plut�t aux formats �html�, �pdf�, �rtf� ou �txt�. Merci.
Cf: http://www.fsf.org/philosophy/no-word-attachments.fr.html

Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
Rendez-vous sur "http://www.mandrakestore.com";.

Foire Aux Questions de la liste : http://mdk.mondelinux.org

Répondre à