Jak odzyskać dane z ZFS: ZVOL-y, zestawy danych, migawki i dyski wirtualne
Przeczytaj o odzyskiwaniu danych z systemu plików ZFS w TrueNAS 25.04.2.6. Omówimy, jak analizować strukturę puli i odzyskiwać dane z ZVOL, Dataset, Snapshot, a także z dysków wirtualnych i maszyn wirtualnych. Przedstawimy typowe scenariusze utraty danych, w tym awarie macierzy, nieudane aktualizacje systemu, usterki sprzętowe oraz przypadkowe usunięcie. Wszystkie czynności zostaną wykonane za pomocą Hetman RAID Recovery w systemie Windows, przy czym podobne możliwości są dostępne także na Linux i macOS.

- Struktura ZFS
- Odzyskiwanie danych ZFS
- Odzyskiwanie dysków wirtualnych
- Dostęp do migawek w ZFS
- Odzyskiwanie usuniętych danych
- Podsumowanie
- Pytania i odpowiedzi
- Komentarze
ZFS od dawna uważany jest za jedno z najbardziej niezawodnych rozwiązań do przechowywania danych dzięki wysokiej odporności na błędy, wbudowanym mechanizmom kontroli integralności i rozbudowanym funkcjom zarządzania pamięcią masową. Oprócz przechowywania zwykłych plików ZFS obsługuje istotne funkcje takie jak ZVOL, Dataset, Snapshot oraz obsługę dysków wirtualnych, co czyni go popularnym na serwerach, systemach NAS oraz w środowiskach wirtualizacyjnych.
Jednak nawet tak odporny system nie jest wolny od awarii. Uszkodzenie puli, przypadkowe usunięcie Dataset, utrata Snapshot, błędy przy pracy z ZVOL lub awaria dysku wirtualnego mogą prowadzić do utraty dostępu do ważnych informacji. W takich sytuacjach istotne jest zrozumienie, jak postępować prawidłowo, aby nie pogorszyć stanu magazynu i zmaksymalizować szanse na pomyślne odzyskanie danych.
W tym artykule przeanalizujemy, jak odzyskać dane z ZFS, w tym z ZVOL, Dataset, Snapshot oraz dysków wirtualnych, jakie metody można zastosować do odzyskiwania informacji oraz które narzędzia pomogą bezpiecznie przywrócić dostęp do plików po awarii.
Odzyskiwanie danych z macierzy RAIDZ1, RAIDZ2, RAIDZ3 oraz Stripe ZFS
Struktura ZFS
W systemie plików ZFS wyróżnia się trzy główne typy obiektów najwyższego poziomu: Dataset, ZVOL i Snapshot. Każdy z nich pełni określoną rolę i ma własne opcje konfiguracyjne.
Dataset jest podstawowym kontenerem plików w puli ZFS, funkcjonującym jako odrębny system plików do przechowywania plików i katalogów. Można go montować bezpośrednio w systemie operacyjnym i udostępniać przez protokoły FTP, NFS, iSCSI, SSH lub SMB. Główną zaletą Dataset jest możliwość niezależnej konfiguracji parametrów bez wpływu na inne części puli. Przy tworzeniu dataset ustawiasz podstawowe właściwości takie jak algorytm kompresji (LZ4, GZIP, ZSTD, LZJB, ZLE), tryb dostępu, rozróżnianie wielkości liter oraz parametry zapisu synchronicznego. Po utworzeniu większość ustawień można zmieniać w dowolnym momencie bez utraty danych, co pozwala dostosować każdy Dataset do konkretnych zadań.
ZVOL reprezentuje urządzenie blokowe, tzn. dysk wirtualny, który w przeciwieństwie do Dataset nie zawiera plików bezpośrednio. Udostępnia przestrzeń blokową do tworzenia systemów plików lub podłączenia jako dysk do maszyn wirtualnych. ZVOL pracuje na poziomie bloków i zapewnia bardziej przewidywalną wydajność w porównaniu z obrazami plikowymi.
Podczas tworzenia ZVOL określasz rozmiar logiczny volsize oraz rozmiar bloku volblocksize, co istotnie wpływa na wydajność. Aby zoptymalizować magazyn, włącz kompresję w celu zmniejszenia objętości oraz deduplikację, aby eliminować duplikaty. Ważne jest także włączenie trybu sparse, który alokuje przestrzeń puli tylko wtedy, gdy dane faktycznie są zapisywane, zamiast rezerwować całą pojemność przy tworzeniu.
TrueNAS umożliwia także tworzenie dysków wirtualnych jako plików zamiast ZVOL. Takie obrazy plikowe mogą być używane przez iSCSI, jednak nie obsługują trybu sparse i zajmują pełną ilość miejsca na dysku od razu po utworzeniu.
Snapshot to migawka (kopija punktowa) Dataset lub ZVOL utworzona z wykorzystaniem mechanizmu copy-on-write, w którym nowe zmiany zapisywane są w innych blokach, a poprzednie bloki pozostają niezmienione. Dzięki temu Snapshot zużywa niemal zerową dodatkową przestrzeń i umożliwia przywrócenie poprzedniego stanu lub poszczególnych plików bez wpływu na bieżące dane. Po utworzeniu Snapshot jest tylko do odczytu; można go usunąć lub wykorzystać do klonowania. Zarządzanie odbywa się za pomocą właściwości visible i hide dotyczących widoczności, a także przez zadania migawek (snapshot tasks) do automatyzacji replikacji i polityki retencji dotyczącej transferu i okresu przechowywania.
| Typ obiektu | Przeznaczenie | Kluczowe cechy | Zastosowanie |
|---|---|---|---|
| Dataset | Logiczny system plików wewnątrz puli ZFS | Obsługuje kompresję, kwoty, deduplikację, oddzielne uprawnienia dostępu | Przechowywanie plików i katalogów |
| ZVOL | Wirtualne urządzenie blokowe | Działa jak zwykły dysk, można sformatować innym systemem plików | Maszyny wirtualne, iSCSI, bazy danych |
| Snapshot | Migawka stanu danych w określonym punkcie czasu | Tworzony natychmiast, zajmuje minimalną przestrzeń do momentu zmiany danych | Kopie zapasowe, przywracanie stanu, odtwarzanie |
Odzyskiwanie danych ZFS
Przeanalizujemy proces analizy i odzyskiwania danych przy użyciu aplikacji Hetman RAID Recovery.
Hetman RAID Recovery może pomóc w krytycznych sytuacjach, gdy zawiedzie sprzęt serwera, system operacyjny TrueNAS działa nieprawidłowo po aktualizacjach lub błędach systemowych, albo nastąpi awaria dysków w serwerze. Niezależnie od przyczyny niedostępności danych, oprogramowanie umożliwia wydobycie informacji i odzyskanie ich na oddzielne urządzenie pamięci masowej.
Podłączanie dysków
Aby rozpocząć proces odzyskiwania, należy wyjąć dyski, które były częścią puli, i podłączyć je do komputera z zainstalowanym Hetman RAID Recovery. Można to zrobić bezpośrednio przez porty SATA na płycie głównej lub przy użyciu zewnętrznych stacji dokujących. Jeśli architektura sprzętowa stacji roboczej nie pozwala na podłączenie wszystkich dysków jednocześnie, aplikacja obsługuje podejście łączone.
W sytuacjach z ograniczoną liczbą wolnych portów optymalnym rozwiązaniem jest utworzenie obrazów wirtualnych niektórych dysków. Można podłączyć część dysków fizycznych bezpośrednio i użyć dokładnych, bit-po-bicie kopii zamontowanych w interfejsie narzędzia dla pozostałych.

Aplikacja traktuje takie obrazy jako pełne urządzenia fizyczne i automatycznie wykorzystuje je do rekonstruowania struktury macierzy. Takie podejście zapewnia bezpieczeństwo danych, ponieważ dalsza analiza jest przeprowadzana na wirtualnych kopiach.
Po podłączeniu wszystkich składników puli fizycznie lub zamontowaniu ich jako obrazy, Hetman RAID Recovery automatycznie odczyta metadane ZFS i wyświetli złożoną macierz w głównym oknie, umożliwiając dalsze skanowanie i zapis plików.

Podczas wykrywania dysków program analizuje metadane i określa konfigurację Twojej macierzy RAID. Liczba dysków wymagana do pełnego odzyskania danych zależy od użytego typu konfiguracji:
- W konfiguracji ZFS Stripe nie ma redundancji, więc wymagane są wszystkie dyski. Brak lub uszkodzenie nawet jednego dysku uniemożliwia pełną rekonstrukcję struktury, a w takich przypadkach możliwe jest jedynie częściowe wydobycie danych z dostępnych dysków.
- RAIDZ1 toleruje awarię pojedynczego dysku. Dlatego odzyskanie jest możliwe, jeśli podłączone są wszystkie dyski z wyjątkiem jednego uszkodzonego. Jeśli brakuje dwóch lub więcej dysków, pełna rekonstrukcja struktury staje się niemożliwa.
- RAIDZ2 pozwala na utratę do dwóch dysków. Do poprawnej rekonstrukcji puli wystarczą pozostałe zdrowe dyski, co umożliwia odzyskanie danych nawet w przypadku podwójnej awarii.
- RAIDZ3 ma najwyższą odporność na błędy i umożliwia utratę do trzech dysków. Przy obecności pozostałych zdrowych dysków możliwe jest pełne odzyskanie danych nawet w złożonych scenariuszach wielokrotnej awarii.
| Typ ZFS | Minimalna liczba dysków | Dopuszczalna utrata dysków | Wydajność | Poziom ochrony danych | Odpowiednik RAID |
|---|---|---|---|---|---|
| Stripe | 2 | 0 | Bardzo wysoka | Brak | RAID 0 |
| RAIDZ1 | 3 | 1 | Wysoka | Średni | RAID 5 |
| RAIDZ2 | 4 | 2 | Średnia | Wysoki | RAID 6 |
| RAIDZ3 | 5 | 3 | Niższa | Bardzo wysoki | – |
Automatyczna rekonstrukcja puli
Uruchom Hetman RAID Recovery, a program automatycznie rozpocznie skanowanie wszystkich podłączonych urządzeń. Narzędzie odczyta serwisowe metadane ZFS, przeanalizuje konfigurację grup wirtualnych (vdev) i na podstawie uzyskanych danych zrekonstruuje poprawny model Twojej puli.

W oknie roboczym zobaczysz wszystkie wykryte dyski i ich parametry. Wybierz żądaną pulę z listy zrekonstruowanych macierzy i uruchom tryb Fast Scan, aby szybko określić strukturę danych.

Po zakończeniu skanowania w głównym oknie zostanie pokazany odzyskany system plików z pełną hierarchią katalogów i plików. Będziesz mógł przeglądać wszystkie Datasety, foldery, pliki, ZVOL, pliki dysków wirtualnych (LUN) oraz Snapshot. Rozwiń katalogi, aby sprawdzić zawartość i zidentyfikować obiekty do odzyskania.

Zaznacz obiekty, które chcesz odzyskać, i kliknij Recovery.

W kolejnym kroku wskaż folder do zapisu danych, wybierając oddzielne urządzenie z wystarczającą ilością wolnego miejsca. Jest to kluczowe, aby uniknąć nadpisania oryginalnych danych na uszkodzonym dysku. Program pokaże dostępną przestrzeń na urządzeniu docelowym oraz rozmiar zaznaczonych plików do kontroli.

Potwierdź rozpoczęcie zapisu i określ końcową ścieżkę zapisu wewnątrz wybranego folderu. Naciśnij ponownie Recovery, aby rozpocząć kopiowanie danych na wybrane nośniki.

Aplikacja wykonuje kopiowanie bajt po bajcie z weryfikacją integralności i pokazuje postęp operacji w czasie rzeczywistym. Po zakończeniu kopiowania naciśnij Finish.
Wszystkie odzyskane dane są teraz dostępne na wybranym urządzeniu w standardowej postaci i gotowe do dalszego użycia bez dodatkowych działań.

Odzyskiwanie dysków wirtualnych
W sytuacjach, gdy wymagane jest odzyskanie danych z powodu przypadkowego usunięcia plików, sformatowania partycji lub usunięcia konfiguracji maszyny wirtualnej przy zachowanym ZVOL, Hetman RAID Recovery oferuje narzędzia do głębokiej analizy i wydobycia informacji.
Program pozwala traktować obiekty ZFS jako pełne urządzenia pamięci masowej niezależnie od tego, czy są to pliki obrazu dysku, czy blokowe urządzenie ZVOL. Dzięki wsparciu szerokiego zakresu systemów plików, w tym NTFS, ReFS, VMFS, Ext, XFS, BTRFS, FAT, ExFAT, APFS, HFS i HikvisionFS, możliwe jest skuteczne odzyskiwanie danych z wirtualnych środowisk o dowolnej złożoności.
Proces odzyskiwania rozpoczyna się od uruchomienia szybkiego skanowania puli w celu zlokalizowania wymaganego ZVOL lub dysku wirtualnego.

Znaleziony obiekt można zamontować bezpośrednio w interfejsie aplikacji lub uprzednio zapisać na komputerze jako plik obrazu do dalszej analizy. Bezpośrednie montowanie oszczędza miejsce na dysku, ponieważ nie wymaga tworzenia dodatkowych kopii.

Po zamontowaniu obiekt pojawia się na liście urządzeń jako zwykły dysk, gotowy do szczegółowej inspekcji jego wewnętrznej zawartości.

Wybór trybu skanowania zamontowanego dysku zależy od charakteru utraty danych. Jeśli pliki zostały po prostu usunięte, użyj Fast Scan, aby szybko wyświetlić hierarchię katalogów. W bardziej złożonych przypadkach, takich jak formatowanie lub zmiany układu partycji, zaleca się użycie Full Scan do dokładnego wyszukiwania na podstawie sygnatur.
Po zakończeniu analizy będziesz mógł przeglądać istniejące i usunięte pliki, zweryfikować ich integralność przez podgląd oraz zapisać wymagane dane na bezpieczne, sprawne urządzenie pamięci masowej.

Dostęp do migawek w ZFS
Hetman RAID Recovery umożliwia skuteczne odzyskiwanie usuniętych lub zmodyfikowanych danych z obiektów ZVOL i dysków wirtualnych przy użyciu wcześniej utworzonych Snapshot. Podejście to jest kluczowe, gdy pełne przywrócenie systemu jest niepraktyczne z powodu ryzyka utraty bieżących zmian dokonanych po utworzeniu migawki — pozwala zachować obecny stan systemu i selektywnie odtworzyć niezbędne dane.
Aby rozpocząć, uruchom tryb Fast Scan, po czym w hierarchii puli pojawi się specjalny folder Snapshot.

Migawki wewnątrz są uporządkowane według nazwy i daty utworzenia, co pozwala szybko zidentyfikować żądany punkt przywracania. Wybierając odpowiedni Snapshot, uzyskujesz dostęp do wszystkich obiektów zarejestrowanych w tym czasie, w tym datasetów i dysków wirtualnych. Pozwala to po prostu skopiować wymagane elementy bez zmiany bieżącej struktury puli roboczej.


Jeśli zapisanie dużych obrazów ZVOL na lokalnym dysku komputera nie jest możliwe z powodu braku czasu lub wolnego miejsca, warto skorzystać z funkcji montowania obiektów bezpośrednio w interfejsie aplikacji. Pozwala to pracować z dyskami wirtualnymi i obrazami LUN jako zwykłymi urządzeniami pamięci masowej bez konieczności wcześniejszego eksportu na nośnik fizyczny. Chociaż wydajność przetwarzania w tym trybie może być nieco niższa, znacznie oszczędza zasoby i pozwala na natychmiastowe przeprowadzenie głębokiego wyszukiwania plików wewnątrz systemów gościa, takich jak NTFS, ext4 lub XFS.

Po zamontowaniu lub wybraniu wymaganego obiektu wewnątrz Snapshot możesz przeprowadzić standardowe akcje wyszukiwania i odzysku. Program pokaże zawartość środowiska wirtualnego, pozwalając zaznaczyć konkretne pliki i foldery do zapisu.

Następnie po prostu kliknij Recovery i wskaż ścieżkę do bezpiecznego urządzenia pamięci masowej.

Takie podejście sprawia, że proces odzyskiwania jest przejrzysty i wygodny, zapewniając elastyczność pracy z danymi w środowiskach produkcyjnych, gdzie ciągłość usług jest priorytetem.
Odzyskiwanie usuniętych danych
W przypadkach, gdy dane zostały usunięte bezpośrednio z puli i Snapshots nie istnieją lub zostały nadpisane, standardowa analiza metadanych staje się nieskuteczna. Specyfika systemu plików ZFS i mechanizmu copy-on-write powoduje, że po usunięciu drzewo katalogów często nie jest zachowane. Jednak same dane pozostają w blokach puli, co umożliwia Hetman RAID Recovery zlokalizowanie i przywrócenie ich nawet przy braku zapisów w tabeli rozmieszczenia.
Przyczyny takiej utraty mogą obejmować przypadkowe usunięcie datasetów, ZVOL lub maszyn wirtualnych wraz z dołączonymi do nich dyskami.
Krytycznym scenariuszem jest inicjalizacja dysków w obcych systemach operacyjnych, takich jak Windows lub macOS, co może nadpisać początkowe informacje serwisowe ZFS. W takich przypadkach program wykonuje analizę niskopoziomową całej powierzchni dysku, identyfikując pliki i struktury logiczne na podstawie ich sygnatur.
Aby odzyskać dane, wybierz zrekonstruowaną macierz i uruchom Full scan. Proces ten wymaga więcej czasu, ponieważ program pracuje bezpośrednio z blokami danych, składając rozproszone fragmenty w spójne obiekty. Jeśli usunięcie miało miejsce wewnątrz maszyny wirtualnej, stosowana jest analiza dwuetapowa: najpierw ZVOL jest odzyskiwany jako urządzenie blokowe, a następnie jego wewnętrzny system plików jest skanowany w celu odnalezienia danych systemu gościa.

Po zakończeniu analizy odkryte obiekty zwykle pojawiają się jako pojedyncza lista w korzeniu puli. Aby odnaleźć wymagane ZVOL lub plik wśród tysięcy znalezionych elementów, użyj wbudowanej funkcji wyszukiwania. Możesz filtrować wyniki według nazwy, daty lub rozmiaru pliku. Jeśli nazwa obiektu nie została zachowana w metadanych, jego objętość jest głównym wskaźnikiem identyfikacji dysku wirtualnego.

Znalezione pliki można odzyskać bezpośrednio lub zamontować jako dyski wirtualne do dalszej inspekcji ich zawartości. Przed ostatecznym zapisem zaleca się użycie funkcji podglądu w celu weryfikacji integralności danych.

Po wybraniu niezbędnych elementów kliknij Recovery i wskaż ścieżkę do oddzielnego, bezpiecznego urządzenia pamięci masowej z wystarczającą ilością wolnego miejsca. Program powiadomi Cię po zakończeniu kopiowania, po czym wszystkie dane będą gotowe do użycia.
Podsumowanie
Odzyskiwanie danych z systemu plików ZFS, w tym z ZVOL, Dataset, Snapshot i dysków wirtualnych, jest możliwe nawet po poważnych awariach, jeśli działania są podejmowane ostrożnie i w kolejnych krokach. Dzięki wbudowanym mechanizmom integralności, migawkom oraz elastycznej strukturze pamięci masowej ZFS znacząco zwiększa szanse pomyślnego odzyskania informacji w porównaniu z wieloma innymi systemami plików.
Snapshots odgrywają szczególnie ważną rolę w procesie odzyskiwania, umożliwiając przywrócenie poprzedniego stanu danych bez konieczności skomplikowanej rekonstrukcji całej puli. W przypadku ZVOL i dysków wirtualnych dodatkową zaletą jest możliwość pracy z poszczególnymi urządzeniami blokowymi, co upraszcza analizę i kopiowanie informacji. Jednocześnie uszkodzenie metadanych lub błędy w strukturze puli mogą znacząco utrudnić proces i wymagać specjalistycznych narzędzi.
Aby zwiększyć szanse na powodzenie odzyskiwania, ważne jest, aby nie zapisywać na problematycznej puli, nie tworzyć nowych datasetów i, jeśli to możliwe, pracować wyłącznie na kopiach dysków. W złożonych przypadkach najbezpieczniejszym rozwiązaniem może być konsultacja ze specjalistami ds. odzyskiwania danych.
Tak więc nawet skomplikowana architektura ZFS nie uniemożliwia odzyskania danych, jeśli jej możliwości są wykorzystywane prawidłowo, a podczas pracy z uszkodzonym magazynem przestrzegana jest bezpieczna procedura postępowania.







