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 ?
--
Yves Martin