| Termin | Definicja |
|---|---|
| VHD_CHAIN_BROKEN | VHD_CHAIN_BROKEN sygnalizuje przerwanie łańcucha dysków różnicowych (parent-child) — dysk potomny odwołuje się do dysku nadrzędnego, który został przeniesiony, zmieniony lub usunięty. VHD_CHAIN_BROKEN – przerwanie zależności między dyskami wirtualnymiVHD_CHAIN_BROKEN oznacza, że system lub oprogramowanie wirtualizacyjne nie może odtworzyć pełnej ścieżki zależności potrzebnej do otwarcia obrazu dysku VHD. W przypadku dysku różnicowego dane są rozdzielane między plik potomny oraz wskazany przez niego obraz nadrzędny. Plik potomny przechowuje przede wszystkim zmiany wprowadzone po utworzeniu zależności, natomiast wcześniejsza zawartość nadal znajduje się w obrazie bazowym. Aby uruchomić środowisko, wymagane jest zachowanie wszystkich elementów tego układu oraz zgodność zapisanych odwołań. Błąd pojawia się wtedy, gdy obraz nadrzędny zostanie usunięty, przeniesiony do innego katalogu, przemianowany albo zastąpiony innym plikiem. Problem może wystąpić również po ręcznym kopiowaniu obrazów, odtwarzaniu danych z kopii zapasowej lub zmianie konfiguracji bez zachowania pierwotnej struktury katalogów. Sam plik potomny nie musi być uszkodzony fizycznie. Może zawierać prawidłowe dane, ale bez właściwego obrazu bazowego nie będzie możliwe odczytanie całej wirtualnej przestrzeni dyskowej. Jak działa łańcuch VHD i czym różni się od pojedynczego obrazuPojedynczy, niezależny obraz VHD może zawierać kompletny system plików i nie potrzebuje dodatkowego pliku nadrzędnego do interpretacji zapisanych danych. Dysk różnicowy działa inaczej: przechowuje informacje o zmianach względem obrazu bazowego, dlatego każda operacja odczytu może wymagać sięgnięcia zarówno do bieżącego pliku, jak i do jego rodzica. Jeżeli zależność obejmuje kilka poziomów, odczyt może przebiegać przez cały łańcuch, na przykład od najmłodszego obrazu różnicowego do kolejnych plików bazowych. Ważną rolę odgrywa identyfikacja obrazu nadrzędnego zapisana w metadanych VHD. Oprogramowanie może sprawdzać między innymi identyfikator rodzica, lokalizację pliku oraz zgodność relacji między kolejnymi elementami. Z tego powodu samo nadanie obrazowi starej nazwy albo przeniesienie go do katalogu wskazanego w konfiguracji nie zawsze rozwiązuje problem. Niekiedy ścieżka jest nieaktualna, a innym razem plik o podobnej nazwie ma inny identyfikator i nie może zostać uznany za właściwego rodzica. Nie należy utożsamiać VHD_CHAIN_BROKEN z brakiem wolnego miejsca ani z typowym błędem systemu plików wewnątrz maszyny wirtualnej. Źródło problemu znajduje się zwykle w strukturze samych obrazów i w relacji między nimi. Próba uruchomienia środowiska z niepełnym łańcuchem może zakończyć się komunikatem o braku dysku nadrzędnego, niedostępnym urządzeniu rozruchowym albo nieprawidłowej konfiguracji nośnika. Typowe przyczyny i błędy podczas pracy z VHD_CHAIN_BROKENJedną z częstszych przyczyn jest przeniesienie plików VHD bez zachowania całego zestawu. Skopiowanie tylko najnowszego obrazu potomnego może sprawiać wrażenie wystarczającego, ponieważ to właśnie on jest widoczny w konfiguracji. W rzeczywistości zawartość wcześniejszych sektorów może nadal znajdować się w obrazie bazowym. Podobny skutek może wywołać zmiana nazwy pliku, ręczne porządkowanie katalogu albo przywrócenie niepełnej kopii zapasowej. Do uszkodzenia logicznej ciągłości może dojść także po nieudanym scalaniu obrazów, przerwaniu procesu konsolidacji lub przywróceniu kilku plików pochodzących z różnych momentów. Jeżeli obraz potomny został utworzony względem jednej wersji rodzica, a następnie podłożono inną wersję, podobieństwo nazw nie będzie wystarczające. W efekcie narzędzie może odrzucić taki plik jako niezgodny z zapisanymi metadanymi. Przed podjęciem naprawy warto zabezpieczyć wszystkie dostępne obrazy oraz nie modyfikować ich bez kopii roboczej. Należy ustalić, który plik jest najnowszy, odtworzyć kolejność zależności i sprawdzić, czy wskazywany rodzic rzeczywiście istnieje. Pomocne bywa porównanie metadanych, ścieżek, identyfikatorów oraz rozmiarów plików, ale każda zmiana powinna być wykonywana ostrożnie. Zbyt wczesne scalanie, zerowanie odwołania do rodzica lub nadpisanie obrazu może utrudnić późniejsze odzyskanie danych. W zależności od stanu plików możliwe jest przywrócenie brakującego obrazu z kopii, korekta ścieżki, odtworzenie właściwego układu katalogów albo kontrolowane scalenie dysków. Nie ma jednej bezpiecznej procedury dla każdego przypadku, ponieważ znaczenie ma między innymi liczba poziomów, sposób wykonania kopii i to, czy pliki były zapisywane po wystąpieniu błędu. Kiedy warto zgłosić VHD_CHAIN_BROKEN do serwisuZgłoszenie do serwisu jest wskazane, gdy obraz zawiera ważne dane, brakuje jednego z rodziców, kilka kopii ma podobne nazwy albo nie ma pewności, który plik powinien zostać użyty. Szczególnej ostrożności wymaga sytuacja, w której środowisko przestało się uruchamiać po przeniesieniu katalogu, awarii nośnika lub odtworzeniu danych z kopii zapasowej. W takich warunkach dalsze próby uruchamiania i zapisywania zmian mogą doprowadzić do nadpisania informacji potrzebnych do rekonstrukcji łańcucha. Przed przekazaniem plików warto przygotować dostępne obrazy VHD, informacje o ich pierwotnym położeniu oraz opis ostatniej operacji wykonanej przed pojawieniem się komunikatu. Ułatwia to rozpoznanie, czy problem dotyczy wyłącznie ścieżki do rodzica, niezgodności identyfikatorów, brakującego elementu, czy też szerszego uszkodzenia danych. Jeżeli nośnik wykazuje objawy awarii, korzystne jest ograniczenie jego pracy i wykonanie kopii sektorowej przed naprawą logiczną. W Warszawie analizę takich przypadków można zlecić w serwisie laptopów i komputerów PC działającym jako Warszawskie Pogotowie Komputerowe 24/7, gdzie przed naprawą laptopa wykonywana jest darmowa diagnoza LAPTOPA. Podczas diagnostyki można uporządkować dostępne pliki, sprawdzić zależności między obrazami i ocenić, czy bezpieczniejsze będzie odtworzenie brakującego rodzica, naprawa konfiguracji, czy odzyskanie danych do nowego obrazu. Do czasu ustalenia struktury nie powinno się usuwać plików uznanych za zbędne, zmieniać ich nazw bez dokumentacji ani rozpoczynać kolejnego scalania. W przypadku VHD_CHAIN_BROKEN najważniejsze jest zachowanie oryginalnych danych i odtworzenie kolejności zależności, ponieważ nawet pozornie niewielka zmiana może wpłynąć na możliwość odczytu całego środowiska. |