Krytyczna analiza rozdziału o odzyskiwaniu danych
Pomimo niezwykle pobieżnego potraktowania przez podręcznik zagadnienia odzyskiwania danych (poświęcono mu raptem 2 i pół strony), skala nasycenia tego rozdziału błędami merytorycznymi sprawia, że odniosę się wyłącznie do najpoważniejszych z nich.
Uszkodzenia mechaniczne dysku twardego
Omawiając przyczyny utraty danych, nie sposób pominąć zagadnienia mechanicznych uszkodzeń dysków twardych. Pominąć nie sposób, ale spłaszczyć to zagadnienie do uszkodzonych sektorów, pomijając przy tym np. zagadnienie uszkodzeń bloków głowic magnetycznych, i zamknąć w dwóch zdaniach szkodliwą poradą użycia w takiej sytuacji HDD Regeneratora już się da.
Tak po prostu, bez elementarnej diagnostyki dysku (zob. Security Magazine 2(11)/2023), zrozumienia sposobu działania HDD Regeneratora, a jedynie ubezpieczając się zastrzeżeniem, że w większości przypadków nie można usunąć tego problemu.
HDD Regenerator jest dość popularnym programem używanym do naprawy uszkodzonych sektorów. Jego zasada działania sprowadza się do nadpisywania uszkodzonych sektorów, co może pomóc wyłącznie w przypadku błędów typu UNC wynikających z nieprawidłowego namagnesowania powierzchni. Zagadnienie uszkodzonych sektorów zostało szerzej opisane w Security Magazine 7(28)/2024.
Cóż więc złego jest w użyciu HDD Regeneratora? Przede wszystkim w przypadku utraty danych nie powinniśmy próbować naprawy uszkodzonych sektorów. W żaden sposób nie przybliży nas to ich odzyskania, za to niepotrzebnie obciąża dysk i jest obarczone ryzykiem dalszego pogorszenia jego stanu.
Ponadto nadpisanie uszkodzonych sektorów "opatentowanym wzorcem" spowoduje zniszczenie ich zawartości, co uniemożliwi podjęcie prób ich odczytania. Niezależnie od tego, że takie próby relatywnie rzadko przynoszą pozytywne rezultaty, nie należy pochopnie zamykać sobie drogi do ich podjęcia.
HDD Regenerator szczególnie łatwo może spowodować katastrofalne w skutkach nadpisanie dużych obszarów danych w dyskach SMR (zob. Security Magazine 6(15)/2023). Nie zapominajmy też o tym, że w przypadku tej kategorii dysków mamy do czynienia z podatnym na uszkodzenia dwupoziomowym podsystemem translacji adresacji LBA na fizyczną. Zbędne zapisy zwiększają ryzyko uszkodzenia tego podsystemu, a w konsekwencji utraty dostępu do obszaru adresacji LBA lub możliwości jakiejkolwiek komunikacji z dyskiem.
O w ogóle nieuwzględnionych w podręczniku najczęstszych usterkach oprogramowania układowego dysków twardych możesz przeczytać w Security Magazine 9(18)/2023.
Czym jeszcze HDD Regenerator sobie zasłużył, że jego polecanie w podręczniku dla przyszłych techników informatyków tak zbulwersowało kol. mdj79? Nawet jeśli nie myślimy o odzyskiwaniu danych, a po prostu chcemy naprawić dysk po to, by dalej z niego korzystać, jest to program działający po prostu źle. I nie chodzi tylko o to, że jest wolniejszy od alternatyw.
HDD Regenerator w ogóle nie monitoruje rejestru błędów. Opiera się wyłącznie na bicie ERR w rejestrze stanu. W dodatku potrafi "naprawiać" dysk, z jakim stracił komunikację, np. zawieszony lub odłączony w czasie pracy. Nie wiem, co program do nadpisywania uszkodzonych lub niestabilnych (tych HDD Regenerator nie zauważa) sektorów musiałby robić gorzej, żeby móc uznać, że jest gorszy od HDD Regeneratora.
Uszkodzenie mechaniczne pamięci typu flash
Autor lekką ręką przekreśla możliwość odzyskania danych w przypadku mechanicznego uszkodzenia nośników typu flash. Nie bierze przy tym pod uwagę różnorodności uszkodzeń mechanicznych występujących w nośnikach tego typu. W większości przypadków są to łatwe do naprawy lub obejścia uszkodzenia złącz.
W mojej ocenie idealne zadanie dla stawiających pierwsze kroki w IT uczniów technikum, tym niemniej najwidoczniej zdaniem Autora podręcznika, jest to zagadnienie niewarte choćby jednego zdania.
Autor pomija także najpopularniejszą i najistotniejszą przyczynę uszkodzeń nośników półprzewodnikowych — awarie oprogramowania układowego (zob. Security Magazine 11(20)/2023). Choć te usterki stanowią główną przyczynę utraty danych, młody technik informatyk nie tylko nie dowie się o tym, w jaki sposób je zidentyfikować, ale nawet o ich istnieniu. Za to dowie się, że z mechanicznie uszkodzonych układów flash danych nie da się odzyskać, co też nie do końca jest prawdą.
Uszkodzenia elektroniczne
Także i w przypadku uszkodzeń elektronicznych Autor zupełnie bezpodstawnie zakłada, że rozwiązanie problemów tego typu możliwe jest tylko w przypadku dysków twardych. To, że Autor tak twierdzi, nie znaczy, że tego się zrobić nie da, ale że ten podręcznik może jednak powinien był napisać ktoś inny.
W większości przypadków uszkodzeń elektronicznych istnieje możliwość naprawy urządzeń poprzez wymianę uszkodzonych elementów. I często można to zrobić na poziomie elementów dyskretnych, bez konieczności zalecanej przez Autora wymiany całej elektroniki.
Przy tym Autor dopuszcza się kolejnego błędu merytorycznego wskazując, że elektronika musi pochodzić z dokładnie takiego samego modelu dysku. Nieprawda, nie musi. Niekoniecznie musi to być też dokładnie ten sam model elektroniki. Najbardziej trywialnym przykładem zamienności różnych elektronik jest możliwość zamiany PCB ze zintegrowaną przejściówką USB i bez niej.
Natomiast warto byłoby uczniom przekazać, że dyski są indywidualnie programowane i w związku z tym zazwyczaj przy wymianie PCB konieczne jest przeniesienie zawartości pamięci EEPROM z elektroniki pacjenta na elektronikę dawcy. Zaniechanie tej operacji przy nieprofesjonalnych próbach odzyskiwania danych często skutkuje popełnianiem kolejnych błędów przy czynnościach zmierzających do rozwiązania problemu braku detekcji dysku i stukających głowic, z nieuzasadnionymi ingerencjami w podsystem mechaniczny dysku i zanieczyszczeniem wnętrza hermobloku włącznie.
Często też przy takich okazjach dochodzi do zagubienia oryginalnej elektroniki, co utrudnia, a nieraz i praktycznie uniemożliwia odzyskanie danych. Szczegółowe wyjaśnienie, dlaczego tak ważne jest zachowanie zawartości oryginalnego EEPROMu wykracza poza ramy tego artykułu, tym niemniej zasadnie byłoby jego umieszczenie w podręczniku.
Problem z partycjami
Polecenie fixmbr nie naprawi tablicy partycji. znajdującej się pod koniec głównego sektora rozruchowego. Polecenie to może naprawić (umieścić w MBRze poprawny w miejsce uszkodzonego) kod wykonywalny. Z punktu widzenia odzyskiwania danych i możliwości uszkodzeń tablicy partycji, użycie polecenia fixmbr nie ma żadnego sensu i nie może doprowadzić do rozwiązania problemu.
Podobnie bezsensowna z punktu widzenia odzyskiwania danych jest zabawa z flagą aktywności partycji. Brak tej flagi w żaden sposób nie wpływa na dostęp do partycji, a co najwyżej może być przeszkodą w rozruchu znajdującego się na tej partycji systemu operacyjnego.
Ustawienie tej flagi nie jest sposobem na rozwiązanie jakiegokolwiek problemu z dostępem do danych, natomiast, podobnie, jak i użycie polecenia fixmbr narusza istotną zasadę unikania zbędnych zapisów na dysku, z jakiego straciliśmy dane. Jednak zabawy z MBRem nie są jeszcze najgorszym sposobem złamania tej zasady.
Narzędzia systemu plików
Użycie polecenia chkdsk może przynieść znacznie bardziej destrukcyjne konsekwencje od prób naprawy MBRu, dlatego też należy do najbardziej szkodliwych błędów popełnianych przy próbach odzyskiwania danych.
Autor zdaje się mieć świadomość szkodliwości tego narzędzia zastrzegając, że nie jest ono odpowiednie dla naprawy plików z ważnymi danymi. Przy okazji jednoznacznie dowodzi, że w ogóle nie rozumie zasady działania tego narzędzia, wskazując, że sprawdza się ono w naprawie plików systemowych.
Jak uruchomić chkdsk tak, by naprawiał jedynie pliki systemowe, a nie uszkadzał plików z ważnymi danymi? To już słodka tajemnica Autora. Tym bardziej, że chkdsk w rzeczywistości niczego nie naprawia. Ani plików, ani dysku, choć taki komunikat wyświetla się na ekranie, ani nawet struktur logicznych systemu plików (zob. Security Magazine 5(14)/2023).
Chkdsk jedynie doprowadza te struktury do stanu pozwalającego na zamontowanie partycji przez system operacyjny. Najczęściej odbywa się to drogą usuwania uszkodzonych fragmentów struktur logicznych, tak, by doprowadzić je do jako takiej spójności. W konsekwencji użycie chkdsku łatwo może doprowadzić do pogubienia plików, a w przypadku systemów i urządzeń obsługujących funkcję TRIM, także do ich fizycznego zniszczenia.
Warto zaznaczyć, że nawet uszkodzone struktury logiczne mogą być istotnym źródłem cennych informacji dla specjalisty rozumiejącego te struktury, potrafiącego je analizować i naprawdę naprawiać. Dlatego też powinno się je chronić, a nie niszczyć.
Mniejsza lub większa liczba przeprowadzanych przez chkdsk niekontrolowanych zapisów może także doprowadzić do nadpisania fragmentów danych, jakie potencjalnie byłyby do uratowania. Dotyczy to w szczególności nośników półprzewodnikowych oraz dysków z technologią SMR, gdzie fizycznie nie ma możliwości zapisywania pojedynczych sektorów LBA. W mniejszym stopniu problem ten dotyka dysków Advanced Format (w zasadzie niemal wszystkich wciąż wykorzystywanych dysków twardych), w jakich fizyczny sektor obejmuje 8 sektorów LBA.
Uruchomienie chkdsku wiąże się także z ryzykiem pogorszenia stanu dysku podczas tej noszącej znamiona sabotażu operacji. W największym stopniu to ryzyko dotyczy nośników półprzewodnikowych, jakie zużywają się w wyniku operacji kasowania i zapisu.
Powyższe uwagi dotyczą także innych, podobnie działających narzędzi, jak scandisk, czy fsck. Dlatego użycie tych narzędzi na dysku, z jakiego straciliśmy dane, należy do najpoważniejszych błędów odzyskiwania danych (zob. Security Magazine 1(10)/2023).
Defragmentacja dysku
Prawdą jest, że pliki niepofragmentowane odzyskuje się łatwiej, od pofragmentowanych. Zwłaszcza w przypadku utraty metadanych opisujących te pliki. Jednak sytuacja nie jest tak oczywista, jakby to wynikało z podręcznika.
Defragmentacja dotyczy wyłącznie porządkowania danych w adresacji LBA. Jej związek z adresacją fizyczną zależy od szczegółów podsystemu translacji jednej adresacji na drugą w konkretnym nośniku. Podstawowe informacje na ten temat znajdziesz w Security Magazine 1(22)/2024.
Ponadto defragmentacja wiąże się z dużą liczbą zapisów, jakie zużywają układy typu flash i dlatego jest niezalecana na nośnikach półprzewodnikowych. Duża liczba zapisów prowadzi też do nadpisywania dużych obszarów dysku, więc jej użycie już po utracie danych przynosi katastrofalne skutki.
"L'essentiel est invisible pour les yeux"
Prócz tego, że recenzowany rozdział podręcznika zawiera liczne błędy merytoryczne, w tym o krytycznym znaczeniu dla procesu odzyskiwania danych, warto pochylić się także nad tym, czego w nim brakuje.
W zasadzie poza zawartym w pierwszym zdaniu zaleceniu wykonywania kopii zapasowej, co może nas uratować jedynie przed wystąpieniem awarii skutkującej utratą danych, trudno w tym rozdziale znaleźć jakąkolwiek sensowną poradę ułatwiającą samodzielne odzyskanie danych lub chociażby niepogorszenie stanu nośnika przy podejmowaniu takich prób.
Bo informacji o możliwości wyciągania plików z kosza, czy polecenia kilku, prawdopodobnie losowo wybranych, prostych programów do odzyskiwania danych nawet nie chcę nie komentować.
Przede wszystkim brakuje informacji pozwalających na samodzielne zdiagnozowanie występującego problemu i racjonalną ocenę możliwości odzyskania danych we własnym zakresie. Zwykle to właśnie brak elementarnych umiejętności diagnostycznych jest podstawową przyczyną podejmowania szeregu losowych czynności, często zupełnie nieadekwatnych do zaistniałego problemu.
I to właśnie takie czynności często prowadzą do pogorszenia stanu nośnika lub jego zawartości. Dlatego też podręcznik powinien uprzedzać o potencjalnych konsekwencjach podejmowanych działań, szczególnie najbardziej inwazyjnych.
Brakuje też informacji o podstawowych zasadach zapobiegania pogorszeniu sytuacji, jak unikanie zbędnego obciążenia dysku, niedokonywanie żadnych, zwłaszcza niekontrolowanych zapisów na takim dysku, czy prób uruchamiania z niego systemu operacyjnego. Z uwagi na dużą popularność dysków SMR i SSD, w podręczniku obowiązkowo powinno się pojawić zalecenie wyłączenia obsługi funkcji TRIM przed podłączeniem do komputera dysku z zamiarem odzyskiwania z niego danych.
Można tylko zgadywać, dlaczego Autor nie zaleca uczniom zabezpieczenia zawartości dysku przez wykonanie kopii posektorowej. O ile oczywiście wstępna diagnostyka wskazuje, że stan dysku na to pozwala.
Przydałoby się także choćby bardzo podstawowe wyjaśnienie zasad działania programów do odzyskiwania danych (zob. Security Magazine 4(25)/2024) pozwalające na dokonanie samodzielnego wyboru odpowiedniego narzędzia kierując się czymś więcej, niż prostota obsługi i ładny interfejs.
Domyślam się, że oczekując wprowadzenia do podręcznika jakiejś elementarnej wiedzy o systemach plików i ich strukturach logicznych, wymagałbym już zbyt wiele. Może więc lepiej byłoby usunąć z podręcznika ten bezwartościowy, a wręcz szkodliwy rozdział?
Trudno tę recenzję podsumować inaczej, niż cytując (za Łukaszem_W) Terrego Pratcheta: "Nie pochwalam szkół. Przeszkadzają w edukacji". Dziękuję kol. mdj79 za poruszenie tego tematu, a kol. Dra98 za jego odświeżenie. Podręcznik został zidentyfikowany przez kol. Łukasza_W, jaki też wniósł istotny wkład w dyskusję nad rozdziałem o odzyskiwaniu danych. Udział w dyskusji wzięli również koledzy: mati211p, pidar, Helmund7543, Kpc21, jarrod, BANANvanDYK, lisek, Haitoke, arkolesz i kaem.