Журнал изменений для блоков в Windows (NTFS) - PullRequest
6 голосов
/ 13 ноября 2010

Я написал инструмент для резервного копирования, который может создавать резервные копии файлов и образов томов для Windows.Чтобы определить, какие файлы были изменены, я использую журнал изменений Windows.Я уже использую функцию теневого копирования для создания согласованной копии как файлов, так и изображений томов.

Чтобы определить, какие блоки были изменены, я в данный момент использую хэши.Это означает, что весь том должен быть прочитан один раз (потому что, чтобы увидеть, какой блок изменился, нужно вычислить хэши всех блоков).Интегрированная в Windows 7 резервная копия может создавать образы инкрементных томов без проверки всех блоков.Мне не удалось найти API для своего рода журнала изменений уровня блока.

Кто-нибудь знает, как получить доступ к этой информации?(Я готов углубиться во внутренности NTFS - даже читать и анализировать специальные файлы)

Ответы [ 2 ]

3 голосов
/ 21 февраля 2011

Я не думаю, что информация об изменении уровня блока доступна где-либо.Скорее всего, встроенная резервная копия Windows 7 устанавливает драйвер фильтра файловой системы , как это делают некоторые продукты резервного копирования и антивирусное программное обеспечение.Драйвер фильтра может перехватывать все вызовы файловой системы и таким образом знать, какие блоки изменились.Если вы сделаете это, вы в основном сможете создать свой собственный журнал изменений, который работает на уровне блоков, но только для файлов, которые вас интересуют.

Мне бы очень хотелось узнать лучший ответ здесь.

0 голосов
/ 11 июля 2014

Когда вы говорите Windows Change Journal, я так понимаю, вы имеете в виду NTFS USN?Это выглядит очень похоже на то, что резервная копия Windows 7 использует комбинацию VSC и NTFS USN для обнаружения изменений и создания инкрементных образов, как вы уже делаете.

...