2010-11-13 13 views
6

Napisałem narzędzie do tworzenia kopii zapasowych, które umożliwia tworzenie kopii zapasowych plików i obrazów woluminów dla systemu Windows. Aby wykryć, które pliki się zmieniły, korzystam z Dziennika zmian systemu Windows. Korzystam już z funkcji kopiowania w tle, aby uzyskać spójną kopię zarówno plików, jak i obrazów woluminów.Dziennik zmian bloków w systemie Windows (NTFS)

Aby wykryć, które bloki uległy zmianie używam w tym momencie skrótów. Oznacza to, że cała objętość musi zostać odczytana jeden raz (ponieważ aby zobaczyć, który blok zmienił, należy obliczyć skoki wszystkich bloków). Kopia zapasowa zintegrowana z systemem Windows 7 umożliwia tworzenie przyrostowych obrazów woluminu bez sprawdzania wszystkich bloków. Nie udało mi się znaleźć interfejsu API dla pewnego rodzaju dziennika zmian na poziomie bloku.

Czy ktoś wie, jak uzyskać dostęp do tych informacji? (Jestem gotów zagłębić się w wewnętrzne partycje NTFS - nawet czytanie i przetwarzanie plików specjalnych)

Odpowiedz

3

Nie sądzę, że informacje o zmianie poziomu bloku są dostępne w dowolnym miejscu. Najprawdopodobniej to, co robi zintegrowana kopia zapasowa systemu Windows 7, polega na instalowaniu File System Filter Driver, podobnie jak niektóre produkty kopii zapasowych i oprogramowanie antywirusowe. Sterownik filtru może przechwytywać wszystkie wywołania systemowe i dzięki temu wiedzieć, które bloki uległy zmianie. Jeśli to zrobisz, możesz w zasadzie zbudować własny dziennik zmian, który działa na poziomie bloku, ale tylko dla plików, które Cię interesują.

Naprawdę chciałabym się dowiedzieć czegoś lepszego.

+0

Tworzenie sterownika (filtra) byłoby w porządku. Problem polega na tym, że jest to projekt typu open source i nie mogę sobie pozwolić (lub lepiej: nie chcę sobie pozwolić) na roczną opłatę 500 $ za certyfikat (64-bitowy) sterownika Windows. Pozostała mi tylko opcja tworzenia kopii w tle, a następnie w jakiś sposób dowiedzenia się, jakie okna zapisują w tej kopii w tle. Ma to dwie wady: kopia w tle nie może zostać usunięta (przestrzeń kosztuje) i nie ma dokumentacji o kopiach w tle (w formacie dysku). Trzeba by było wszystko odwrócić. – UrOni

+2

Nie miałem pojęcia, że ​​było za to opłata. Innym problemem z metodą kopiowania w tle jest to, że implementacja może się różnić w zależności od dostawcy VSS, który jest używany. –

+0

Trochę za późno na tę dyskusję, ale na wypadek, gdyby ktoś jeszcze tego szukał ... –

0

Kiedy mówisz "Dziennik zmian systemu Windows", rozumiem, że odnosi się to do USN NTFS? Wygląda bardzo podobnie do kopii zapasowej systemu Windows 7 używa kombinacji VSC i NTFS USN do wykrywania zmian i tworzenia przyrostowych obrazów, podobnie jak już to robisz.

Powiązane problemy