Claude MICOUIN wrote:

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

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

Pas mal ton explication, mais mon serveur X est en rade suite à une extinction forcée du courant....
J'enlève un carte écran, puis l'autre... Rien de mieux...
Je pense de plus en plus à réinstaller mon serveur... Là, je suis sur le petit PC...
Comment récupérer ma config afin que la nouvelle installation se fasse avec cette config?
Serveur ssh, sftp, ftp, http, mysql, samba, NIS, NFS.... J'en ai pris du temps pour installer tout ça!
--
Amicalement vOOo <http://fr.openoffice.org>tre


Troumad alias Bernard SIAUD
troumad.free.fr <http://troumad.free.fr> : AD&D, mathématiques, WEB, et sectes.




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 à