Как перечислить все измененные файлы в теневом томе?

Когда создается точка восстановления, Windows начинает отслеживать том, и любые изменения записываются в собственный файл различий в папке «Информация о системном томе».

С помощью VSS-SDK API мы можем показать том, но он показывает нам весь том и все файлы/папки, которые были или не были изменены с момента создания моментального снимка, а при доступе к любому файлу драйвер-фильтр применяет diff, если требуется, и показывает нам файл.

Мой вопрос: можно ли перечислить все измененные файлы относительно точки восстановления (кроме метода грубой силы для сравнения каждого файла внутри теневого тома и основного тома)?

Как Windows делает это, когда мы нажимаем на вкладку предыдущих версий в свойствах файла?


person lalli    schedule 27.08.2010    source источник


Ответы (4)


Воспользуйтесь Журналом изменений NTFS. Windows регистрирует все изменения всех файлов на томе NTFS в базе данных журнала (если журнал включен). Это можно запросить, чтобы вернуть все изменения с определенного начального номера USN (ваша точка восстановления).

Вот статья о журнале, которая очень помогла мне при внедрении изменений. функциональность журнала

person Hannes de Jager    schedule 27.10.2010
comment
спасибо за ссылку, не могли бы вы узнать, как получить номер USN для точки восстановления? Я изо всех сил пытаюсь получить эту информацию, и у меня есть вопрос без ответа, если у вас есть секунда? stackoverflow.com/questions/10544433/ - person stuck; 23.07.2012
comment
Я добавил ответ на ваш вопрос... Хотя это может быть не совсем то, что вы ищете ;-) - person Hannes de Jager; 19.08.2012

Чтобы обнаружить изменения в текущей файловой системе по сравнению с теневой копией, вы можете использовать стороннее программное обеспечение, такое как WinMerge, с путями UNC теневой копии http://winmerge.org/. Это обеспечит графический интерфейс для сравнения

Например, используйте «C:\» вместо «\localhost\C$\@GMT-2017.08.24-18.07.46».

Конечно, введите допустимый путь UNC, чтобы он совпадал с датой и временем теневой копии.

person Jim Lutz    schedule 24.08.2017

Я предполагаю, что лучший способ - это грубая сила в сочетании со сравнением номеров USN. Для справки, ссылка на аналогичный вопрос: здесь

person lalli    schedule 06.09.2010

Windows знает дату изменения атрибутов. Он сравнивает два файла и проверяет дату изменения.

person Krish    schedule 02.09.2010
comment
Атрибуты даты (все три — создание, изменение и доступ) можно легко изменить программно, поэтому я не думаю, что это так. - person lalli; 03.09.2010