Когда NTFS ReparsePoint не является ReparsePoint?
При тестировании программного обеспечения для резервного копирования и восстановления я столкнулся со следующим аномальным обстоятельством: после полной инвентаризации файлов и папок у меня появилось несколько файлов, которые утверждают, что Archive | Sparse | ReparsePoint
, После восстановления эти файлы только Archive | Sparse
,
В инвентаре я делаю серию хэшей SHA1 BackupRead
потоки, и эти хэши совпадают как до, так и после восстановления... то есть я вернул то, что я изначально прочитал. Тем не менее, если бы был ReparseData
блок, и я не смог выписать его, хеши не совпали бы.
В других файлах с таким набором атрибутов восстановление происходит нормально и все ожидаемые атрибуты восстанавливаются. Это значит быть таким ReparseData
был найден, и результирующий файл отображается как ReparsePoint
после восстановления.
После восстановления операционная система работает нормально, файлы загружаются и выполняются (многие из этих странных файлов - файлы.DLL).
У меня нет проблем с разрешениями - я предоставил все необходимые привилегии и открываю файлы с FILE_FLAG_OPEN_REPARSE_POINT
в подготовке к BackupWrite
, Кажется, все работает правильно.
Но я волнуюсь. Я не знаю, как или почему я потерял флаг ReparsePoint. Я не знаю, как он был помечен как ReparsePoint в первую очередь. Я не знаю, если это какой-то странный артефакт оригинальной установки. Есть ли способ установить ReparsePoint
Атрибут без фактически точки повторной обработки в файле?
Вот краткий список некоторых из затронутых файлов и местоположений:
Windows\WinSxS\amd64_microsoft-windows-filehistory-core_31bf3856ad364e35_10.0.14393.0_none_e2812d3f8d830dbb
(all files)
Windows\WinSxS\amd64_microsoft-windows-gdi_31bf3856ad364e35_10.0.14393.0_none_d74783f3713901b3
atmfd.dll
atmlib.dll
dciman32.dll
Большинство (но не все) файлов-нарушителей также оказываются жестко связанными в других местах тома (обычно в Program Files
). HardLinks определенно не являются точками повторного анализа (они реализованы по-разному).
Их несколько сотен (всего). Весь том имеет около 160 тыс. Файлов. Должен ли я просто пройти через это?