Page 2 of 2

Портит файл при копировании

Posted: Sat 27 Jul, 2019 18:50
by DrKnS

Latest post of the previous page:

Nicko, если вы считаете, что копирование sparse-файлов работает неправильно, приведите минимальный пример, воспроизводящий проблему.
Без торрентов, дефрагментаторов, оптимизаторов и экскурсов в историю более других менеджеров.

Портит файл при копировании

Posted: Sat 27 Jul, 2019 20:12
by Nicko
Я, скорее, описывал ситуацию и хотел с вашей помощью разобраться - что же происходит, чем сообщал о неправильной работе.

Ситуация такова: uTorrent каким-то чудесным образом записывает неполные блоки в файл и fsutil sparse query выдаёт регион, содержащий эти данные, хотя он, наоборот, должен быть пустым. Копирование и доступ к файлу чем угодно, не поддерживающим распределённые файлы, переносит эти данные в новый файл, который уже не является распределённым. Об этом и писал автор темы.

К сожалению, попытки установить регион, используя fsutil или sparser.exe, убирают эти данные из файла - я не могу вам передать файл и смоделировать ситуацию.

Портит файл при копировании

Posted: Sat 27 Jul, 2019 22:07
by DrKnS
Насколько я понимаю:
- При копировании sparse-файлов в общем случае не гарантируется, что они остантутся sparse (но Far пытается, при отключенной системной функции)
- Сохранение позиций и размеров allocated ranges при копировании не гарантируется. Мы читаем их из исходного файла и пишем в новый, но ОС может переаллоцировать так, как ей удобнее, при первом доступе к файлу.
- fc /b не должно находить различий при условии, что в файлы больше никто не пишет.