On Mon, Nov 25, 2013 at 09:35:38AM +0600, Alexey Shalin wrote:
> делаю сихронизацию двух каталогов
> синк проходит без проблем, но если сделать
> написал  скрипт,  который  бы  делал  сравнивал  md5sum файлов ... все
> md5суммы совпали
> 

Это, скорее всего, размер метаданных каталогов влияет. Они при создании файлов
в каталоге разрастаются и потом при удалении фалйлов не уменьшаются.

Вот пример:

1) создание каталога для теста
mkdir 10k
2) создание в нём 10 тыс файлов нулевого размера
$ for i in `seq -w 1 10000`; do touch 10k/$i; done
3) каталог занимает 256К без учета размера файлов
$ ls -ld 10k
drwxr-xr-x 2 apavel apavel 262144 Nov 26 23:53 10k/
4) удаление всех файлов из каталога
$ rm 10k/*
5) пустой он всеравно занимает 256K
$ ls -ld 10k
drwxr-xr-x 2 apavel apavel 262144 Nov 26 23:53 10k/
6) если его скопировать, то копия будет 4K
$ cp -pr 10k/ copy
$ ls -ld 10k copy
drwxr-xr-x 2 apavel apavel 262144 Nov 26 23:53 10k/
drwxr-xr-x 2 apavel apavel   4096 Nov 26 23:53 copy/
$ du -ks 10k copy
256     10k
4       copy

Вот и вся причина разницы в выводе du между оригиналом и копией.

PS На ноутбучном диске 10k файлов создавались слишком долго, но на
примонтированном с tmpfs через loop файле все прошло заметно бодрее :)

$ df -T .
Filesystem     Type 1K-blocks  Used Available Use% Mounted on
/dev/loop0     ext4   1995664 36008   1858280   2% /mnt


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20131126201045.gc17...@vesuvius.wapper.ru

Ответить