Marc SCHAEFER wrote:

Merci Marc. Faisons le tour des hypothèses:

Sauf erreur, sauf si tu as énormément de fichiers (style spool de mail
non hiérarchique ou de news), ce n'est pas le problème. Le symptôme
est que la taille du répertoire vue par `ls' est > 4096 bytes.

1657 fichiers, répartis dans 83 sous-répertoires, on ne peut pas appeler ça énormément.

Une autre possibilité est que les blocs de données soient fragmentés (au
sens FFS/BSD: un bloc de données contient les données de plusieurs
fichiers, car leur taille totale est plus petite que la taille
d'allocation, usuellement 4 kilobytes avec ext2/ext3 et une grosse
partition). Je ne savais pas que ext2/3 supportaient les fragments.

Est-ce que dans ce cas là le fs pourrait décider de sauvegarder 2 copies de mêmes données de 2 façon différentes ? La diminution de taille est quand même de ~25%, donc pas seulement un ou deux blocs qui ont changé.

Si tu copies des données d'un fs à l'autre avec une autre taille de
bloc, ou carrément une autre organisation / un autre filesystem,
il y aura des arrondis.  Faire un `du --apparent-size'
(en bytes, plutôt qu'en blocks).

C'est le même fs, même répertoire. Mais 'du --apparent-size' retourne la même valeur pour les deux répertoires (9 Mb environ).

Si la taille *augmente* avec la copie, cela peut être dû à la présence
de `sparse files' (des fichiers pleins de zéros dont les zéros ne sont
pas encore alloués: p.ex. base de données indexée, fichier projeté en
mémoire avec mmap(2), etc).

C'est l'inverse ici.

Une dernière possibilité serait que les méta-données contiennent des
ACLs ou autres resource forks (sisi, c'est implémentable en ext2/ext3,
via les extended attributes) qui ne seraient pas copiés par `cp',
mais cela me semble peu probable.

Normalement pas. Mais le répertoire original venait d'un fichier tar (que je n'ai plus malheureusement); peut-être tar a-t-il extrait les fichiers d'une façon "étrange", qui n'est pas repliquée lors d'une copie ?

Ah, et cp déréférence, par défaut, les liens symboliques, `-a' pour
copier le lien lui-même.

Mais ça devrait aussi augmenter la taille, pas la diminuer ?

Frédéric
_______________________________________________
gull mailing list
[email protected]
http://lists.alphanet.ch/mailman/listinfo/gull

Répondre à