Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Uszkodzony MFT i mirror, dane są

nusch 06 Jul 2010 00:39 4302 6
  • #1
    nusch
    Level 15  
    Mam problem z odzyskaniem danych z ntfsa obecnie struktura dysku wygląda tak:
    
    nusch@novopad:~$ fdisk -l -u /dev/sda
    
    Disk /dev/sda: 320.1 GB, 320072933376 bytes
    255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0006e805
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1              63   120005535    60002736+   7  HPFS/NTFS
    /dev/sda2   *   120005550   120101939       48195   83  Linux
    /dev/sda3       120101940   594196155   237047108    5  Extended
    /dev/sda4       594260415   625008815    15374200+   7  HPFS/NTFS
    /dev/sda5       120262590   211624244    45680827+  83  Linux
    /dev/sda6       211624308   220010174     4192933+  82  Linux swap / Solaris
    /dev/sda7       220010238   350008154    64998958+  83  Linux
    /dev/sda8       350008218   532988504    91490143+  83  Linux
    /dev/sda9       532988568   594196154    30603793+   7  HPFS/NTFS
    
    


    Problematyczna partycja to partycja NTFS na końcu dysku - /dev/sda4

    Straciłem tablice partycji a to co jest wyżej to odbudowana tablica. Wszytkie partycje poza tą jedną dają się normalnie odczytać, po 2 dniach różnych prób i używania różnych narzedzi(głownie testdisk, parted, gparted, fdisk i cfdisk coś się w jej strukturze uszkodziło. Na początku był problem żeby testdisk w ogóle ja wykrył - nie dał rady bo partycja była między innymi przesuwana w prawo - testdisk przy skanowaniu wykrywał starą kopię.

    Stworzyłem więc fdiskiem partycję zjmującą cały obszar - od partycji extended(sda) do końca dysku. Ten obszar wczytałem do hexedytora i wyszukałem wszytkie wystąpienia bootsectora NTFS (ciągu EB 52 90 'N' 'T' F' 'S').
    Znalazłem dokładnie 10 wystąpień - 5 blisko początku , 5 blisko końca więc zakładam że połowa była boot sectorem a druga jego kopiami.

    Spisałem sobie pierwsze 5 adresów i po kolei tworzyłem partycje o takim początku i końcu na końcu dysku. Za każdym razem sprawdzałem testdiskiem rezultat.

    pierwszy adres: uszkodzny boot sector
    drugi adres: testdisk wyświetlił zawartość - pustą partycje z system volume infortation
    trzeci adres test disk wyświetlił wszystkie moje pliki

    Wiedząc że 3 boot sector jest tym właściwym policzyłem na podstawie NTFS FAQ końcowy sektor partycji i zapisałem ponownie fdiskiem. Potem na tej partycji uruchomiłem testdisk i wybrałem opcje stworzenia backup bootsectora na podstawie głównego. Wszystko ok, testdisk dalej wyświetlał pliki razem z pełnym drzewem katalogów ale również informacje że zarówno MFT jak i MFT mirror są uszkodzone.
    Obraz w pliku: offset_594260415_sector0-9.bin
    Próbowałem policzyć położenie $MFT, jednak wychodzi mi poza pojemnością dysku(mogę się mylić), a wyszukjąc hexedytorem ciąg "FILE" znajduję go dopiero kilkadziesiąt tysięcy sektorów dalej od przyjętego początku partycji, a chwile przed nimi kolejny boot sector NTFS. Przyjmując ten bootsector za początek partycji testdisk znowu widzi tylko System Volume Information dodatkowo raportując:
    
    Disk /dev/sda - 320 GB / 298 GiB - CHS 38914 255 63                                                                                                                                          
         Partition                  Start        End    Size in sectors                                                                                                                          
     4 P HPFS - NTFS          36994  39 53 38913  80 63   30831329 [Boot]                                                                                                                        
                                                                                                                                                                                                 
    Boot sector                                                                                                                                                                                  
    Warning: Incorrect number of heads/cylinder 16 (NTFS) != 255 (HD)                                                                                                                            
    Warning: Incorrect number of sectors per track 2 (NTFS) != 63 (HD)                                                                                                                           
    Status: OK                                                                                                                                                                                   
                                                                                                                                                                                                 
    Backup boot sector                                                                                                                                                                           
    Status: OK                                                                                                                                                                                   
    

    Oprócz tego sam rozmiar partycji wg tego bootsectora jest znacznie mniejszy wykorzystane tylko 2 bajty - maks ~32MB przy 512 bajtowym sektorze a partycja ma ~15GB
    obraz z tego punktu w pliku offset_594311119_sector0-49.bin

    Skąd testdisk bierze informacje o nazwach plikow itp skoro sam wyświetla komunikat że obie MFT są uszkodzone ? I jak to naprawić bez kopiowania plików?

    Nie wiem czy to ma jakieś znaczenie ale ta partycja to partycja recovery laptopa, wcześniej miała zmieniony typ partycji z NTFS na Compaq Diagnostics, gdy dzialała po zamianie typu stawała się widoczona i można było do niej zapisywać i odczytywać.
  • #2
    migol21
    HDD Recovery specialist
    Pominę bzdury osoby duży bo szkoda strzępić języka na pirata i brak wiedzy.

    Kolega nush zapozna się z programem DMDE.
    https://www.elektroda.pl/rtvforum/topic1445635.html

    Zasada podstawowa najpierw kopia potem działania teraz trudno powiedzieć co się działo Trzeba wykonać SCAN NTFS możliwe, że źle wpisane są wartości położenia MFT w Boot.

    Do poczytania :
    https://www.elektroda.pl/rtvforum/topic1589389.html
  • #3
    nusch
    Level 15  
    Ok zrzuciłem wszystkie sektory od końca partycji extended do końca dysku na dysk zewnętrzny który wcześniej wyzerowałem łacznie z tablicą partycji, ten dysk podłaczyłem do innego komputera - z windowsem i DMDE, wybrałem skan NTFS i otrzymałem podobny efekt do ręcznego szukania - kilka możliwych pozycji z czego jedna jest prawidłowa, nie wiem co z tym dalej zrobić:
    Uszkodzony MFT i mirror, dane są

    Jak interpretować te dane ?

    Jedyne sensowne wyniki dostaje dla Vol 1 i Vol 2 - i tylko te mają rozmiar klastra 4KB czyli taki jaki chyba powinen być dla partycji o tym rozmiarze.

    Dla Vol 1 mam:
    
    Disk min.size 14.6GB, start at 31.4MB
    Pliki znalezione 540(603) z 61152(w 18 frag MFT)
    


    Dla Vol 2:
    
    Disk min.size 14.6GB, start at 15.0GB
    Pliki znalezione 540(599) z 61152(w 17 frag MFT)
    


    Przy próbie otwierania obu woluminów w widoku bootsectora , w pierwsyzm wartości wyglądają na sensowne, a w drugim większoc informacji program zaznacza na czerwono.
    Nie wiem czy się tym sugerować na tym etapie czy po prostu najpierw odzyskać MFT i pliki a potem zmodyfikować boot sector żeby wskazywał na poprawny MFT?


    Dodatkowo jeżeli założe że pierwszy volumin jest prawidłowy to znaczy że bootsector drugiego nadpisał dane pierwszego i właśnie coś takiego widzę przeglądając $MFT dla Vol 1:
    Uszkodzony MFT i mirror, dane są
    Co powinno znajdować się pomiędzy tym $Quota a $SECURITY_DESCRIPOR? W najgorszym wypadku starcę uprawnienia czy coś ważniejszego? I czy chkdsk sobie to odbuduje czy trzeba ręcznie ?
    Podobnie na końcu ostatnie 7 rekordów jest czerwone - czy to znaczy że te 7 plików starciłem nieodwracalnie nieznając ich nazw?
    W załączniku ntfsscan.log
  • #5
    nusch
    Level 15  
    Screen z wybranym Vol 1:

    Uszkodzony MFT i mirror, dane są

    Jeszce pytanie czy wybierając otwórz wolumin czy odznaczając i zaznaczając segmenty mft w tym programie zmiany są od razu zapisywane na dysku?

    Bo z tego screena wynika że wolumin już został dodany do tablicy partycji..
  • Helpful post
    #6
    migol21
    HDD Recovery specialist
    Nie został dodany a jedynie znaleziony.
    Jak widać wolumin 14,57 GB jest woluminem, który w pewnym sensie jest sprawny jedyny problem polega na tym iż po większości działań jakie wykonałeś nie ma już ani poprawnego Boot sektora ni też Boot Copy Trzeba teraz odbudować Boot na podstawie MFT. Tutaj już zdalne połączenie jest potrzebne.
  • #7
    nusch
    Level 15  
    Ok problem rozwiązany, wielki ukłon w stronę kolegi migol21 za pomoc zdalną i za wszystkie posty o mbr, ntfs i mft tu na elektrodzie, temat zamykam.