If-Koubou

Co to są "kopie w tle" i jak ich używać do kopiowania zablokowanych plików?

Co to są "kopie w tle" i jak ich używać do kopiowania zablokowanych plików? (Jak)

Podczas próby utworzenia prostych kopii zapasowych plików w systemie Windows powszechnym problemem są zablokowane pliki, które mogą spowodować awarię operacji. Niezależnie od tego, czy plik jest aktualnie otwierany przez użytkownika, czy zablokowany przez sam system operacyjny, niektóre pliki muszą być całkowicie nieużywane, aby można je było skopiować. Na szczęście istnieje proste rozwiązanie: kopie w tle.

Za pomocą naszego prostego narzędzia można uzyskać łatwy dostęp do kopii w tle, co umożliwia dostęp do kopii aktualnie zablokowanych plików utworzonych przez funkcję przywracania systemu Windows.

Image credit: Najlepsze usługi tworzenia kopii zapasowych

Jakie są kopie w tle?

Kopie w cieniu to koncepcja, która została po raz pierwszy wprowadzona w systemie Windows Server 2003. Działa ona w systemie Windows, okresowo indeksując system i szukając zmian plików dokonanych od czasu ostatniego przeszukiwania i rejestrując zmiany. Te zmiany są indeksowane i układane jeden na drugim, co tworzy historię pliku / folderu. Proces ten został następnie dodany do systemu operacyjnego Windows Vista w ramach funkcji Przywracanie systemu, która jest tam, gdzie pozostaje do dziś. Technologia jest podstawą funkcjonalności poprzednich wersji systemu Windows.

Odbywa się to w tle jako proces na poziomie systemu (tworzenie punktu przywracania), który nie podlega takim samym ograniczeniom jak operacje na plikach inicjowane przez użytkownika. W rezultacie system jest w stanie przechwytywać zmiany w plikach, które są zablokowane dla użytkownika.

Aby uzyskać dostęp do zablokowanego pliku, musimy po prostu uzyskać dostęp do najnowszej kopii w tle. Jest to ta sama zasada używana przez Kopię zapasową systemu Windows i inne komercyjne produkty do tworzenia kopii zapasowych, które mają dostęp do plików PST programu Outlook, a Outlook pozostaje otwarty.

Należy jednak pamiętać, że ponieważ kopie w tle są pobierane podczas tworzenia punktu przywracania systemu, zawartość między plikiem live a wersją shadowingu może być inna. Domyślnie system Windows tworzy punkt przywracania każdego dnia, więc w większości sytuacji powinno to być rozsądnym kandydatem do utworzenia kopii zapasowej.

Uzyskiwanie dostępu do kopii w tle

Od tego momentu w artykule założono, że korzystasz z naszego narzędzia dostarczonego za pośrednictwem linku na dole artykułu. Skrypt wsadowy powinien zostać umieszczony w folderze ustawionym w zmiennej PATH systemu Windows. Jeśli nie masz pewności, po prostu umieść go w katalogu C: \ Windows i to powinno wystarczyć.

Aby uzyskać dostęp do plików zapisanych w kopiach w tle, używamy narzędzia wiersza poleceń VSSAdmin, które jest dołączone do systemu Windows. To narzędzie musi działać jako administrator, aby działało poprawnie, więc po otwarciu wiersza polecenia należy kliknąć prawym przyciskiem myszy i wybrać opcję "Uruchom jako administrator".

Po otwarciu nasze narzędzie wykonuje dla Ciebie ciężkie podnoszenie. Aby wyświetlić informacje o składni i nagłówku narzędzia, wystarczy wpisać:

MountLatestShadowCopy /?

Na przykład polecenie:

MountLatestShadowCopy C: \ LatestShadow \ C:

wykona następujące działania:

  1. Znajdź najnowszą kopię w tle dla dysku C.
  2. Utwórz dowiązanie symboliczne / pseudo-katalog "C: \ LatestShadow"
  3. Udostępnij całą zawartość kopii w cieniu w tym katalogu.

Po zakończeniu możesz swobodnie przeglądać zawartość poprzez wiersz poleceń:

lub przez Eksploratora Windows, tak jak każdy inny folder.

Po zakończeniu możesz po prostu usunąć pseudo katalog z poziomu wiersza poleceń, używając:

RMDIR C: \ LatestShadow

lub bezpośrednio przez Eksploratora Windows. Akcja usuwania po prostu odmontowuje folder i faktycznie nie usuwa kopii w tle.

Używanie w skryptach / zautomatyzowanych zadaniach

Powyższe informacje są w porządku i są eleganckie, ale dzięki ręcznej obsłudze są bardziej dostępne za pośrednictwem wcześniejszych wersji systemu Windows. Dźwignia, którą zapewnia nasze narzędzie, odbywa się podczas zautomatyzowanych procesów.

Na przykład poniższy skrypt zainstaluje najnowszą kopię w tle w katalogu lokalnym "C: \ MyShadow", a następnie skopiuj plik "outlook.pst" znajdujący się w folderze dokumentów użytkownika JDoe na serwer zapasowy. Po zakończeniu lokalny katalog, w którym przechowywana jest lokalizacja kopii w tle, jest usuwany w celu oczyszczenia się.

CALL MountLatestShadowCopy C: \ MyShadow \

XCOPY "C: \ MyShadow \ Users \ JDoe \ Documents \ Outlook \ outlook.pst" "\ BackupServer \ MyFiles \"

RMDIR C: \ MyShadow

Jeśli próbowałeś skopiować wersję live tego samego pliku i użytkownik miał ją otwartą w tym czasie, operacja kopiowania plików zakończy się niepowodzeniem. Jednakże, ponieważ uzyskaliśmy dostęp do pliku za pomocą kopii w tle, nie ma blokad, a procedura kopiowania praktycznie zawsze kończy się sukcesem. Jak wspomniano wcześniej, ta procedura jest dokładnie taka, jak popularne produkty do tworzenia kopii zapasowych są w stanie zrobić to samo.

Ważną informacją wspomnianą wyżej jest to, że aby uruchomić powyższy skrypt lub dowolny skrypt wykorzystujący narzędzie MountLatestShadowCopy.bat (które ponownie wykorzystuje narzędzie VSSAdmin), wiersz polecenia musi zostać uruchomiony jako konto administratora. Aby użyć tego narzędzia wewnątrz zaplanowanego zadania, odpowiednie zadanie musi być ustawione na "Uruchom z najwyższymi uprawnieniami", aby zautomatyzowany proces mógł montować kopie w tle za pomocą narzędzia VSSAdmin.

W skrócie, wykonywanie kopii zapasowych plików jest prawie zawsze najbezpieczniejsze podczas kopiowania z kopii w tle. Chociaż nie zawsze otrzymasz najnowszą wersję pliku, fakt, że wiesz, że plik nie zostanie zablokowany, a procedura kopiowania zostanie uruchomiona, może być całkiem korzystna w większości przypadków.

Pobierz narzędzie MountLatestShadowCopy z HowToGeek.com