Przywracanie macierzy RAID prostymi metodami

Przywracanie macierzy RAID prostymi metodami

1. Wprowadzenie
2. Mała dygresja
3. Przyczyny wyjścia macierzy RAID awarii
4. Poziomy RAID i zasady odzyskiwania danych
5. Czego nie warto robić
6. Sposoby odzyskiwania tablic
– oprogramowanie
– sprzętowy
7. Wnioski

 Wprowadzenie

W tym artykule omówimy zasady odzyskiwania danych z macierzy RAID w tak zwanych “prostych” przypadkach, za pomocą metod, które są dostępne praktycznie dla wszystkich i nie wymagają głębokiej wiedzy w zakresie sprzętu komputerowego i oprogramowania”. Przypadki, które można zaliczyć do “trudnych”, zbyt się od siebie różnią i wymagają indywidualnego podejścia, więc nie ma sensu opisywać ich w ramach jednego artykułu.

Uwaga!!! Jeśli zagubione informacje mają krytyczne znaczenie, a nie Jesteś specjalistą w dziedzinie odzyskiwania danych, to zalecamy, aby natychmiast skontaktować się z firmą, której głównym obszarem działalności jest rozwiązanie tego rodzaju problemów.

Ale jeśli los danych obchodzi Cię mniej niż pragnienie, aby spróbować samodzielnie je odzyskać, to ten artykuł jest dla Ciebie.

 Mała dygresja

Biorąc to pod uwagę, nie możemy nie wspomnieć o kontrolerach RAID, których dziś jest bardzo wiele, odpowiednio do zakresu cen od dwudziestu do kilku tysięcy dolarów. Porównanie niezawodności – pytanie trudne, ale jak się domyślacie, różnica w cenie nie wzięła się z palca.

Kontrolery budżetowego poziomu, mają uproszczony algorytm pracy i odzyskiwania danych po awarii, co przekłada się na większe prawdopodobieństwo utraty informacji. Droższe modele są znacznie bardziej niezawodne, algorytmy przetwarzania błędów bardziej doskonałe, ale i one nie są bez skazy.

RAID nie jest panaceum od utraty informacji. Praktyka pokazuje, że zdarzają się zakłócenia w jego pracy, jak i awarie dysków twardych, lub występuje problem wynikający z innego. W każdym razie, całkowicie polegając na niezawodność tablic i nie dbając o aktualne tworzenie kopii zapasowych, istnieje ryzyko, że pewnego dnia pozostaniemy bez “bezpiecznie przechowywanych informacji.

Prawdopodobieństwo utraty danych można znacznie zmniejszyć, regularnie monitorując stan tablicy raid i wykonując prace konserwacyjne, ale całkowicie zredukować do zera ryzyka związanego z utrata danych się nie da.

 Przyczyny awarii macierzy RAID

Najczęstszą przyczyną awarii macierzy dyskowych jest zaniedbanie administratorów systemu, liczących na to, że “w jedno miejsce bomba dwukrotnie nie spada”. Podczas pracy, na przykład RAID 5, awaria jednego z dysków spowoduje, że macierz raid nadal będzie funkcjonować, ale już z wyraźnym spadkiem prędkości. Administrator systemu, widząc awarię dysku, nie bardzo śpieszy się podejmować aktywne działania, ponieważ liczy na to, że tablica w takiej postaci jeszcze w stanie pracować przez jakiś czas. To czasem okazuje się błędem.

Jeśli wystąpi awaria jednego z dysków, najlepiej natychmiast wykonać kopię zapasową ważnych danych i potem, zastępując następnie uszkodzony dysk nowym dyskiem i włączając odbudowę macierzy.

Dlaczego ważne jest zauważyć to, że należy najpierw wykonać kopie zapasowe? Bo podczas próby odbudowy tablicy, zdarza się, że proces “zawiesza się”. Zazwyczaj dzieje się tak, jeśli w trakcie czytania\nagrywania na jednym z dysków jest wykrywany bad-blok, a kontroler nie może obliczyć informacje z sektora. W rezultacie, po długim czasie oczekiwania, przeciążają serwer. Następnie okazuje się, że tablica jest całkowicie “rozwalona”. Zawiesza się w takich przypadkach, co najprawdopodobniej związane z poprawnym przetwarzaniem wyjątkowej sytuacji. Zazwyczaj opisane zjawisko jest bardziej typowe dla tanich modeli kontrolerów, ale spotyka się również w przypadku stosowania drogich profesjonalnych kontrolerów.

Kolejną częstą przyczyną awarii macierzy, jest jednoczesne przejście kilku dysków w tryb off-line. Jak pokazuje praktyka, najczęściej dzieje się tak z powodu problemów ze SMART, lub kumulacji bad-bloków. Dopóki ich liczba nie przekroczy określonej wartości, dysk działa poprawnie, ale w pewnym momencie tablica przestaje działać. I niby wszystko jest dobrze, i dysk, sądząc po dźwięku, normalnie startuje, i jest poprawnie wykrywany na kontrolerze, ale nie jest jasne, dlaczego jest status dysku off-line, tablica nie startuje i dane nie są widoczne. Wszystko z powodu tego, że kontroler nie może uznać danych z dysku za niezbędne, albo diagnozuje SMART i wykrywa dysk jako “martwy”.

Można przytoczyć jeszcze wiele przykładów awarii tablic, ale co zrobić, jeśli jednak się to stało? Jeśli Informacje są utracone, należy je przywrócić.

 Teoria: Poziomy RAID i zasady odzyskiwania danych

Najczęściej obecnie używane tablice poziomów 0, 1, 10, 5, 50. W ostatnim czasie obserwuje się rosnące zainteresowanie szóstym poziomem.

Poniżej znajduje się krótka informacja o zasadach pracy macierzy. Bardziej szczegółowo, o tym można przeczytać w innych zakładkach Przywracanie macierzy RAID prostymi metodami

RAID 0 – stosowanie przemienne nagrywania (stripe). Buduje się z dwóch lub więcej dysków. Informacje są zapisywane na wszystkie dyski macierzy blokami określonymi w wielkościach (8kb,16kb,32kb,64 kb, 128kb…) wielkości. Pliki, których rozmiarem jest jeden blok, równomiernie rozłożone na dwóch lub więcej dysków.

Z powodu braku redundancji lub powielania danych w razie awarii jednego z dysków, przywrócenie danych w całości jest niemożliwe bez skorzystania z danych zawartych w blokach uszkodzonego dysku. Wyjątkiem będą tylko pliki, których rozmiar jest mniejszy od rozmiaru bloku. Dla pełnego odzyskiwania informacji w takich przypadkach należy najpierw posektorowo odzyskać dane z uszkodzonego dysku, po czym złączyć ponownie w macierz RAID.

W przypadkach, gdy wszystkie dyski są sprawne, a tablica nie chce działać poprawnie, odzyskiwanie odbywa się metodą programową, która jest opisana poniżej

RAID 1 – wykorzystanie technologii tworzenia obrazu lustrzanego (mirror). Buduje się z dwóch dysków. Informacje jednocześnie są zapisywane na oba dysku, każdy dysk jest pełną kopią swojego brata. W przypadku awarii jednego z dysków tablica pozostaje nienaruszona.

Jeśli wystąpi awaria sterownika i tablica przestaje się pojawiać, to odzyskiwanie danych można wykonać, korzystając z porad z artykułu “Proste odzyskiwanie danych”. Do tego jeden z dysków należy podłączyć do komputera bezpośrednio, bez przechodzenia przez kontroler RAID. Przy odrobinie szczęścia, po podłączeniu Twoje dane mogą być dostępne bez korzystania z programów opisanych w powyższym artykule.

RAID 10 – to łączenie poziomu 0 do poziomu 1, czyli dwa stripe łączące się w raid 1 (lustro). W tablicy takiej są używane co najmniej 4 dyski. Dane można odzyskać poprzez wykonanie w razie awarii jednego z jego składowych macierzy RAID 0, postępując tak jak z odzyskaniem danych z macierzy raid 1.

W przypadku wystąpienia problemów, w pierwszej kolejności należy ustalić, z czym dokładnie masz problemy z kontrolerem lub z dyskami

Kiedy problem dotyczy kontrolera, należy określić, które dyski są parami, a które stripe-ami. Tutaj ważne jest, aby nie pomylić dysków, gdyż to doprowadzi do utraty czasu i brak rezultatu. Po tym, jak to będzie wiadomo, można traktować taką parę jak jeden dysk i podłączyć ją do kontrolera by odzyskać dane.

Podczas obsługi RAID 10, zdarza się i tak, że psują się dwa dyski. Możliwe są tutaj następujące opcje:

1) Oba dyski należą do jednego stripe-a, kontroler poprawnie przetwarza wyjątkową sytuację i tablica nadal funkcjonuje normalnie.

2) Oba dyski należą do jednego stripe-a, ale tablica jest nieczytelna. W tym przypadku po prostu bierzemy sprawny stripe, i programowo zbieramy się do odzyskiwania danych (o tym poniżej).

3) Dyski należą do różnych stripe-ów, ale w jednym z nich przeżył pierwszy, a w drugim drugi dysk. Spróbujmy programowo zebrać z nich RAID 0.

4) padły jednoimienne dyski różnych stripe-ów. Niestety jeden z uszkodzonych dysków trzeba naprawiać, ponieważ w żaden inny sposób nie da się wyczytać z niego danych. Następnie programowy montaż.

RAID 5 – tablice z kontrolą parzystości. Główną jego zaletą jest rozkład bloków informacji i kontrolnych na wszystkich dyskach macierzy. Do tworzenia takiej tablicy wymagane są co najmniej trzy dyski. Pojemność macierzy jest równy sumie wielkości jego składowych dysków, minus jeden dysk. Bloki kontroli parzystości są używane do obliczenia brakujących informacji w razie awarii jednego z dysków, elementów tablicy. Tak więc, w przypadku utraty jednego z dysków dane nie zostaną utracone, i tablica może kontynuować pracę.

Ale zdarza się i tak, że po awarii jednego dysku, kontroler nie obsługuje poprawnie wyjątkowej sytuacji i tablica przestaje działać poprawnie, albo całkowicie “spada”. Podobny błąd może wystąpić także podczas wykonywanego po wymianie dysku do przebudowy tablicy. Czasami w krótkim czasie po śmierci pierwszego dysku, wyskakuje z macierzy jeszcze jeden.

Jeśli tablica nie działa, i ilość uszkodzonych dysków jest nie większa niż jeden, można raid zebrać programowo, analogicznie do tego, jak będzie RAID 0. W razie awarii dwóch dysków, najpierw trzeba przywrócić zdolność do pracy, lub przenieść informacje na sprawny dysk z jednego z nich, a dopiero potem można zająć się montażem tablicy.

 Praktyka: Czego nie wolno robić

Wspomnieć o tym, czego nie wolno robić, aby ostatecznie nie stracić danych.

Przede wszystkim, nie wolno tworzyć nowej tablicy ze starych dysków, w nadziei, że on się uruchomi i będzie działać jak wcześniej. To może zadziałać, ale istnieje dość wysokie prawdopodobieństwo, że na kontrolerze będą realizowane działania, które doprowadzą do trwałej utraty danych.

Rozpoczęcie inicjalizacji też do niczego dobrego nie doprowadzi, więc zaleca się od niej zrezygnować, a jeśli nie jest to możliwe, używać tylko quick init.

Co jeszcze można zaszkodzić tablicy? Uruchomienie narzędzia typu Checkdisk lub czegoś podobnego. A w ogóle najlepiej jest pamiętać, że w przypadku utraty informacji na RAID, należy odstąpić od jakiegokolwiek nagrywania na płytę. Jeśli nie wiadomo dokładnie, czy określone działania mogą doprowadzić do utraty informacji lub nie, to lepiej albo skonsultować się z kimś, kto to wie, albo zrezygnować z ich wykonywania.

 Sposoby odzyskiwania RAID

 Programowe odzyskiwanie RAID na przykładzie poziomu 0 i 5

Podstawowym sposobem odzyskiwania danych z macierzy RAID jest programowy montaż obrazu tablicy. Czyli za pomocą narzędzi programowych bloki z różnych dysków ustawiają się w odpowiedniej kolejności. Kolejność bloków w tablicy zależy od lokalizacji dysków na kanałach i od algorytmu pracy samego kontrolera.

Przed przystąpieniem do pracy, warto stworzyć klony wszystkich dysków (numerując je), w celu zabezpieczenia się od błędnych działań. Kopie można zrobić zarówno w postaci plików, jak i bezpośrednio na inne dyski.

Pracować z kopią lub oryginałem – ty decydujesz. Gorąco polecam korzystanie z kopii, ponieważ jeśli na oryginalnych nośnikach są nieczytelne lub niestabilne sektory, to praca z takim dyskami może znacznie pogorszyć ich stan lub doprowadzić do jej całkowitego zaprzestania.

Aby zebrać tablicy, musisz znać ustawienia, z którymi został on stworzony. Jest to rozmiar bloku i kolejność dysków.

Jeśli są Ci znane, to można uznać, że połowa pracy jest już wykonana, a my zaoszczędzimy sporo czasu dla innych, bardziej przyjemnych spraw. Jeśli nie, to trzeba będzie je poznać.

Na szczęście, istnieją automatyczne narzędzia do wyszukiwania i konfiguracji odbudowy RAID, takie na przykład, jak program RAID Reconstructor. Jeśli ustalisz w nim poziom tablicy, to spróbuje znaleźć pierwotną kolejność dysków, rozmiar bloku.

Dalej opiszemy krok po kroku czynności podczas korzystania z tego narzędzia.

Oto przed nami okno uruchomionego programu.

main

Pierwszy krok niezbędny do rozpoczęcia pracy – to wybór rodzaju tablicy. On odbywa się w rozwijanej liście “RAID TYPE”.

Ustawiając typ tablicy do montażu, należy określić ilość dysków w oknie “#drives”. Po tym jak to zrobisz, poniżej liczby są podświetlone na biało kilku pól (ich liczba będzie równa liczbie wybranych dysków). Umieszczając każdy z oświetlone okna, klikamy prawym przyciskiem myszy i wybieramy dyski, na których znajdował się tablica. Po tym, jak dysk jest wybrany – przechodzimy do pozycji “Block size”.

Tutaj należy określić rozmiar bloku, jeśli jest on znany, jeśli nie to zostawiamy ten element bez zmian i klikamy na “Open drives” i następnie na przycisk “Analyze”.

Przed Tobą pojawi się nowe okno. W przypadku pracy z RAID 0 to:

parametrs1

Czy to z RAID 5:

parametrs2

Tak więc, przed nami znajduje się okno, w którym będą określić parametry wyszukiwania sekwencji dysków, wielkości bloku, i jeśli zbieramy RAID 5, parity rotations.

Jeśli, jak wspomniano powyżej, wiesz o tym, na jakim kontrolerze został utworzony szyk, jaki został użyty algorytm zapisu informacji na dyskach, a także rozmiar bloku, to wyklucza niepotrzebne opcje w okienkach “Block size” i “Parity rotations”. Jeśli parametry nie są znane, zostawiamy wszystko tak jak jest. Naciskamy przycisk “Next”.

Rozpoczęło się renderowanie wszystkich możliwych kombinacji. Na koniec, program dobierze Ci najbardziej poprawną wersję, wydając w dolnej części ekranu, coś w rodzaju “Recommendation: choose entry 1”. Jeśli to się stało, można odetchnąć spokojnie. Odpowiedni algorytm znaleziono.

Jeśli nie, to znaczy, że zniszczenia tablicy na tyle poważne, należy zwiększyć ilość sektorów dla próby w odpowiednim polu i powtórzyć analizę. Jeśli i to nie pomoże, to pomoże tylko specjalista.

Ale dalej znaleziono ustawienia. Dalej wariantów może być kilka. Albo przerobić obraz tablicy do pliku albo utworzyć plik obrazu wirtualnego i kontynuować jego analiza w programie Captain Nemo, Get Data Back lub DiscEditor. Co wybrać – ty decydujesz.

Jest jeszcze opcja, wykorzystując wiedzę o lokalizacji dysków, algorytm zapisu i wysokości bloku, można przywrócić RAID za pomocą programu o nazwie UFS Explorer. Instrukcja korzystania z tego produktu można znaleźć w jego dokumentacji.

Gdy tablica zmontowana jest poprawnie, a system plików na nim nie ma logicznych uszkodzeń, można uzyskać dostęp do danych za pomocą standardowych metod. W szczególności, jeśli obraz skopiowany na dysk twardy, wystarczy podłączyć go do komputera i ponowne uruchomienie SYSTEMU operacyjnego (jeśli twoja płyta główna nie obsługuje opcji podłączania dysków na gorąco tzw. hot-plug).

Przypominam, że w określony powyżej sposób można przywrócić RAID tylko w najprostszych przypadkach. Opis trudnych sytuacji wykracza poza zakres tego artykułu, i oznacza obecność specyficznych wiedzy.

Na przykład, może nie uda się odzyskać RAID opisaną metodą w przypadku, gdy sterownik zapisuje na początku dysku konfiguracyjne informacje. Nie podając w programie liczby sektorów również nie dostaniesz się do danych, można uzyskać błędny wynik przy automatycznym doborze konfiguracji macierzy. Te bloki konfiguracyjne są indywidualne dla każdego modelu kontrolera i by dokładnie poznać ich rozmiar można tylko zbadać zawartość początkowych sektorów.

 Sprzętowe odzyskiwanie RAID

Alternatywą dla tworzenia obrazu może być sprzętowy montaż macierzy. Powinniśmy natychmiast – bez znajomości algorytmu pracy sterownika, albo bez posiadania kopii zapasowej absolutnie wszystkich dysków tablicy, przerwać prace ponieważ używanie tej metody o nazwie “może się uda” kategorycznie nie jest zalecane, wprowadza takie zmiany na dyskach, w wyniku których już nie dostaniesz danych, nawet zwracając się do ekspertów.

Zawarte tutaj informacje stosowane są raczej w celach informacyjnych, niż jako przewodnik do działania.

Istota metody polega na tym, że tablica stwarza się na kontrolerze od nowa, z konfiguracją, nie w pełni podobną zeszłym.

Uwaga. Jeśli podczas tworzenia zostanie uruchomiona odbudowa, istnieje duże prawdopodobieństwo bezpowrotnej utraty danych.

Niektóre modele kontrolerów po utworzeniu nowej tablicy automatycznie inicjują, co również może spowodować utratę danych.

Jeśli wszystkie dyski macierzy były sprawne, to istnieje prawdopodobieństwo, że bez żadnych dodatkowych czynności można ponownie uzyskać dostęp do informacji. Także nie jest wykluczone, że system będzie częściowo uszkodzony i trzeba jeszcze popracować na takich narzędziach jak R-Studio, Get Data Back, albo czymś podobnym.

W przypadkach z tablicami piątego poziomu, gdy jeden z dysków jest uszkodzony, można utworzyć tablicę z wymianą dysku na podobny, sprawny. Gdy tablica zostanie utworzona (rebulidu nie włączać!), po uruchomieniu systemu operacyjnego, dysk trzeba będzie wyłączyć “na gorąco”.

W rezultacie, istnieje prawdopodobieństwo, że można uzyskać dostęp do swoich danych lub poprzez wykorzystanie programów do logicznego odzyskiwania informacji.

 Wnioski

Podsumowując, jeszcze raz zwracamy uwagę – jeśli dane są bardzo ważne, odłóż eksperymenty na inny czas, i zwrócić się do specjalistów. Radzimy to, znając doświadczenie wielu ludzi.