Bonsoir,
Yves Martin a écrit :
> Hello,
>
> Je viens de raccourcir le cas-test:
>
> # rm -f /var/lib/rpm/__db*
> # rpm --verifydb
> rpmdb: Page 71: bad page number 550
> rpmdb: Page 71: invalid next_pgno 464
> rpmdb: /var/lib/rpm/Sigmd5: DB_VERIFY_BAD: Database verification failed
> error: db4 error(-30975) from db->verify: DB_VERIFY_BAD: Database verification
> failed
> rpmdb: Page 84: bad page number 81
>
> Comme un commentaire du bug report parle de "sparse file", j'ai voulu vérifié
> avec mon outil maison et il a trouvé:
>
> # stat __db.002
> File: `__db.002'
> Size: 663552 Blocks: 60 IO Block: 1024 regular file
> Device: fc02h/64514d Inode: 34842 Links: 1
> Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
> Access: 2009-03-06 17:29:29.000000000 +0100
> Modify: 2009-03-06 17:29:29.000000000 +0100
> Change: 2009-03-06 17:30:03.000000000 +0100
>
> Comme les pages d'un fichier en loopback ne coïncident plus avec les blocks du
> disque, le problème de fichier creux disparaît...
>
> Avec un bs=4096, rpm ne génère plus de fichiers creux.
>
> Est-il possible d'"interdire" les fichiers creux sur un ext3 avec des options de
> mount ou tune2fs ou autre ?
Dommage que ce ne soit pas du NTFS, car il existe une option pour
désactiver les "sparses" (documentation kernel Linux) :
/usr/src/linux/Documentation/filesystems/ntfs.txt:disable_sparse
/usr/src/linux/Documentation/filesystems/ext2.txt parle bien de
"sparses", mais à priori cela n'a rien à voir avec des fichiers creux.
Quoi que... La notions de "sparses" d'un fs ext2/3 parle d'un problème
de superblock gardé en réserve. D'où ma question : Tu es sûr que ton
problème viendrait de fichiers creux ?
Cordialement,
Olivier
--
~~~~~~~ _____/\_____ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Phoenix / _ \/ _ \ Olivier Allard-Jacquin
/ / \ / \ \ Web: http://olivieraj.free.fr/
/___/ / \ \___\ Mail: olivieraj@???
~~~~ ///// ///\\\ \\\\\ ~~~~~~~~~~~~~~~~~~~~~~~ Linux Powered !!