Re: ext3 et rpmdb

トップ ページ

このメッセージに返信
著者: Patrick Dupre
日付:  
To: guilde
題目: Re: ext3 et rpmdb
On Wed, 4 Mar 2009, Yves Martin wrote:

> Bonjour,
>
> Je suis confront? ? un bug avec Mandriva (2008.1 x86_64 actuellement)
> https://qa.mandriva.com/show_bug.cgi?id=32547 qui est particuli?re ardu.
>
> Pour r?sumer, un syst?me de fichiers ext3 cr?? en 2007 par l'installateur de
> Mandriva 2007.0 avec un block size de 1024 et les options par d?faut de l'?poque
> contient tout mon syst?me / sauf /home et notamment /var/lib/rpm
>
> Dans cette configuration, il suffit de faire les op?rations suivantes pour
> corrompre la base RPM:
> # rm -f /var/lib/rpm/__db*
> # rpm --rebuilddb
> # rpm --verify --all
> # rpm --verifydb
> rpmdb: Page 159: bad page number 493
> rpmdb: /var/lib/rpm/Sha1header: DB_VERIFY_BAD: Database verification failed
> error: db4 error(-30975) from db->verify: DB_VERIFY_BAD: Database verification
> failed
> [ ... idem avec les autres fichiers ... ]
>
> Les commandes rpm corrompent les fichiers (en mmap ?) et n?cessite une
> reconstruction des bases pour ?tre ? nouveau utilisable (tr?s peu de temps...)
>
> J'ai fait un reboot avec /forcefsck hier et je constate d?j? sur mon syst?me
> "live" (certes apr?s un suspend/resume):
>
> # fsck.ext3 -n -f /dev/sda6
> e2fsck 1.40.8 (13-Mar-2008)
> Warning! /dev/sda6 is mounted.
> Warning: skipping journal recovery because doing a read-only filesystem check.
> Pass 1: Checking inodes, blocks, and sizes
> Deleted inode 665617 has zero dtime. Fix? no
> Inodes that were part of a corrupted orphan linked list found. Fix? no
> Inode 848964 was part of the orphaned inode list. IGNORED.
> Pass 2: Checking directory structure
> Pass 3: Checking directory connectivity
> Pass 4: Checking reference counts
> Pass 5: Checking group summary information
> Block bitmap differences: -(6795275--6795277) -(6795281--6795287) -6795299
> -(6795301--6795302) -6795305 -6795313 -(6795693--6795707)
> Fix? no
> Inode bitmap differences: -665617 -848964
> Fix? no
> ROOT: ********** WARNING: Filesystem still has errors **********
> ROOT: 271155/1222656 files (5.1% non-contiguous), 8009015/9775520 blocks
>
> La version de rpm utilis? est (rpm-4.4.2.3-0.rc1.7mnb1.x86_64.rpm):
> # rpm --version
> RPM version 4.4.2.3-rc1
>
> ?videmment les solutions propos?es ne m'int?resse pas vraiment: r?installer /
> avec la derni?re Mandriva qui utilise un block size de 4096, ext3 en loopback
> sur /var/lib/rpm (qui fonctionne bien mais qui pose des probl?mes lors des
> upgrade)
>
> Mes questions:
> - est-ce normal de voir s'accumuler des "block/inode bitmap differences" sur un
> ext3 ?
> - est-ce un probl?me RPM ou ext3 ? quel outil/cas test mettre en oeuvre pour
> cibler le probl?me ?
>
> Mon objectif ?tant vraiment de r?parer (patch dans rpm ou tune2fs)...
>
> Merci d'avance pour votre aide
>


J'ai eu un probleme similaire avec fedora, je croyais que c'etait
specifique a fedora lors de ma recente mise a jour !!!
Il y a un bug reconnu (et ancien !) que la db de rpm ne fonctionne pas
avec une blocksize the 1024 !!!!
Pourquoi, je n'ai jamais eu la reponse. A priori il ne manque pas d'inodes
alors !!!!!!!!!

Bref, avec une version live j'ai fait une sauvegarde de / (cp -a),
j'ai change ma blocksize et j'ai refait un cp -a dans l'autre sens.
Et voila, depuis plus de probleme avec rpm !


-- 
---
==========================================================================
  Patrick DUPRÉ                      |   |
  Department of Chemistry            |   |    Phone: (44)-(0)-1904-434384
  The University of York             |   |    Fax:   (44)-(0)-1904-432516
  Heslington                         |   |
  York YO10 5DD  United Kingdom      |   |    email: pd520@???
==========================================================================