У меня нет опыта работы с btrfs, но он рекламирует возможность дублирования файлов.
В моем приложении мне нужно будет дублировать целые деревья каталогов.
Из того, что я узнал, btrfs только дедуплицирует в некоторых пост-сканированиях, а не сразу. cp
Кажется, даже простое использование не вызывает дедупликации (по крайней мере, df
показывает увеличенное использование диска в размере копируемых файлов).
Могу ли я вообще избежать перемещения данных и сказать btrfs
напрямую, чтобы дублировать файл в другом месте, по сути, просто клонируя его метаданные?
По сути, похоже на жесткую ссылку, но с независимыми метаданными (разрешения, мод. Раз, ...).
cp --reflink=always
, результатом с точки зрения пользователя будут два совершенно независимых файла во всех отношениях. Тот факт, что базовая файловая система абстрагируется от копирования при записи, является лишь деталью реализации. Вы не получаете «жесткую ссылку, но с независимыми метаданными». Насколько мне известно, btrfs пока не выполняет автоматическую дедупликацию. Я думаю, что это план на будущее, но я не уверен в этом.
cp --reflink=always
,