Почему BTRFS так сильно искажает размер небольших файлов в моей файловой системе?
[pi@rpi scipy]% cat __init__.py | wc -c # literal byte count
4729
[pi@rpi scipy]% du --apparent-size -h __init__.py # size on filesystem (same)
4.7K __init__.py
[pi@rpi scipy]% du -h __init__.py # reported size to ls
1.0M __init__.py
- Полностью опционы на акции (по
defaults
, обычныйmkfs.btrfs
) - Linux Kernel 3.18
- RAID1
Итак, кажется, что BTRFS округляет файлы до 1 МБ с некоторым порогом. Этот 1 МБ составляет ровно 1048576 (или 2 ⁰) байтов.
Что еще более удивительно, cat __init__.py > __init__2.py
создает новый файл правильного размера. Это как-то связано с тем, что я создал эти файлы через samba?
Вновь созданные файлы также имеют правильный размер.