7
root@phoenix:~# ls -ld /backups/external?/var/subsonic/thumbs/110
drwxr-xr-x 2 root root 73728 Mar  4 15:35 /backups/external3/var/subsonic/thumbs/110
drwxr-xr-x 2 root root 69632 Mar  4 15:35 /backups/external4/var/subsonic/thumbs/110

Содержимое вышеуказанных каталогов идентично. Конфигурации дисков и файловой системы идентичны. Однако размеры самих каталогов различны.

Да, содержимое рассматриваемого каталога идентично, я проверил с diff -r, rsync -avx, а также вне всякого сравнения. Вот вывод diff -r:

root@phoenix:~# diff -r /backups/external{3,4}/var/subsonic/thumbs/110
root@phoenix:~# 

вывод du -bs:

root@phoenix:~# du -bs /backups/external?/var/subsonic/thumbs/110
4116125 /backups/external3/var/subsonic/thumbs/110
4112029 /backups/external4/var/subsonic/thumbs/110

du -b - итоговый вывод, подсчитывающий только файлы в каждом каталоге:

root@phoenix:~# du -b --total /backups/external3/var/subsonic/thumbs/110/* | tail -1 
4042397 total
root@phoenix:~# du -b --total /backups/external4/var/subsonic/thumbs/110/* | tail -1 
4042397 total

Итак, для внешнего3:

4042397 + 73728 = 4116125

и для внешнего4:

4042397 + 69632 = 4112029

Размер файлов, добавляемых к размеру самого каталога, совпадает с выводом du -bs.

1 ответ1

8

Размер, сообщаемый ls -l для каталога, не связан с накопленным размером файлов, хранящихся в нем.

Для большинства обычных файловых систем это просто размер в байтах, необходимый для хранения записей каталога. Этот размер увеличивается в зависимости от размера блока (например: 4096, 8192, ...). Сколько записей может храниться в блоке, зависит от файловой системы и зависит от длины имени файла.

Когда записи каталога удаляются, размер каталога не изменяется, чтобы уменьшить фрагментацию.

В вашем примере каталог external3 имеет 18 * 4096 блоков, в то время как external4 имеет 17 * 4096 блоков.

Это просто означает, что первые сохраняли еще раз файлы (или файлы с более длинными именами), даже если содержимое каталога в настоящее время идентично. Ничего страшного.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .