Moja sytuacja wydaje się bardzo podobna do tego, jak naprawić uszkodzony dysk twardy GUID do MBR, ale z wystarczającymi różnicami, że nie byłem w stanie stworzyć pewnego rozwiązania.
Mam dysk Toshiba 3 TB w obudowie USB, który jest używany na komputerze Mac z systemem OS X El Capitain 10.11.3.
Dysk został skonfigurowany z jedną partycją. Dysk nie był bootowalny i nie miał zainstalowanego systemu, więc zakładam, że nie będzie miał partycji odzyskiwania. Nie mogę powiedzieć na pewno, że nigdy nie miał zainstalowanego systemu, ale nie sądzę. Nie był używany z Bootcamp ani na żadnym innym komputerze niż Mac.
Dysk działał normalnie przez długi czas, ale ostatnio nie został rozpoznany. Podczas sprawdzania za pomocą Narzędzia dyskowego pokazuje, że ma typ partycji FDisk_partition_scheme . Jestem pewien, że pierwotnie była to typowa domyślna mapa partycji GUID sformatowana jako OS X Extended (Journaled) .
Nie mogę wymyślić żadnego konkretnego zastosowania ani zdarzenia, które mogło spowodować zmianę.
Oto informacje, które zebrałem z dysku.
lista diskutil / dev / disk6
/dev/disk6 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *3.0 TB disk6
1: 0xEE 375.1 GB disk6s1
diskutil info / dev / disk6
Device Identifier: disk6
Device Node: /dev/disk6
Whole: Yes
Part of Whole: disk6
Device / Media Name: DT01ABA300
Volume Name: Not applicable (no file system)
Mounted: Not applicable (no file system)
File System: None
Content (IOContent): FDisk_partition_scheme
OS Can Be Installed: No
Media Type: Generic
Protocol: USB
SMART Status: Not Supported
Total Size: 3.0 TB (3000592982016 Bytes) (exactly 5860533168 512-Byte-Units)
Volume Free Space: Not applicable (no file system)
Device Block Size: 512 Bytes
Read-Only Media: No
Read-Only Volume: Not applicable (no file system)
Device Location: External
Removable Media: No
Virtual: No
OS 9 Drivers: No
Low Level Format: Not supported
fdisk / dev / disk6
Disk: /dev/disk6 geometry: 97451/255/63 [1565565872 sectors]
Signature: 0xAA55
Starting Ending
#: id cyl hd sec - cyl hd sec [ start - size]
------------------------------------------------------------------------
1: EE 1023 254 63 - 1023 254 63 [ 1 - 732566645] <Unknown ID>
2: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
3: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
4: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
gpt recovery / dev / disk6
gpt recover: /dev/disk6: no primary or secondary GPT headers, can't recover
gpt -r -vv show / dev / disk6
gpt show: /dev/disk6: mediasize=3000592982016; sectorsize=512; blocks=5860533168
gpt show: /dev/disk6: PMBR at sector 0
start size index contents
0 1 PMBR
1 5860533167
gdisk / dev / disk6
GPT fdisk (gdisk) version 1.0.1
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: not present
Creating new GPT entries.
Oto zrzut ekranu pierwszej części dysku w wxHexEditor. PART EFI zaczyna się od 4096.
Zacząłem szukać ciągu HFSJ, zaczynając od przesunięcia 409642, jak sugerowano w innych odpowiedziach, ale nie znalazłem go w pobliżu. Szukałem więc od początku dysku i znalazłem pierwsze wystąpienie z przesunięciem 314598400.
Jeśli jednak nadal szukam wystąpień HFSJ, znajduję wiele z nich, które wyglądają dokładnie tak samo i mają dużo zerowego miejsca wokół nich, jak pierwszy. Te zaczynają się od 360424448 i są oddalone od siebie o 32768. Na przykład w odsunięciach 360424448 360457216 360489984 360522752 360555520
Użyłem wyszukiwania Znajdź wszystko w wxHexEditor i zatrzymałem się po kilku minutach. W tym momencie znalazł kilka tysięcy. Nie jestem pewien, co z nimi zrobić, jeśli w ogóle.
Udało mi się również znaleźć sekcję o nazwie Partycja systemowa EFI z przesunięciem 3000592961536. Pokazuje ona także nazwę napędu, „Rosie”.
Oto zrzuty ekranu z pierwszej partycji HFSJ i partycji systemowej EFI. Dodano zrzut ekranu przesunięcia 8192 na podstawie komentarzy.
Dziękuję za wszelką pomoc.
źródło
0+0 records in
0+0 records out
0 bytes transferred in 0.000013 secs (0 bytes/sec)
Odpowiedzi:
Spróbuj wykonać następujące czynności:
Uzyskaj identyfikator dysku zewnętrznego dysku 3 TB
Poniżej zakładam, że identyfikator dysku to disk6
odmontuj dysk:
Zastąp pierwsze 40 bloków:
Utwórz nowy gpt:
Sprawdź informacje o dysku za pomocą:
Upewnij się, że rozmiar bloku urządzenia nadal wynosi 512 bajtów
Możesz także użyć
Jeśli gpt pokazuje:
masz dysk i kontroler dysku, który zgłasza logiczny rozmiar bloku 512 bajtów. Proszę przejść do następnego kroku.
Jeśli gpt pokazuje:
masz dysk i kontroler dysku, który zgłasza logiczny rozmiar bloku 4096 bajtów. Zatrzymaj się tutaj i dodaj komentarz.
Najpierw odbuduj wpis EFI za pomocą:
W zależności od wielkości dysku i wersji systemu woluminy EFI o różnej wielkości są budowane, jeśli są partycjonowane za pomocą Narzędzia dyskowego: albo o rozmiarze 200 MiB, albo o 300 MiB. Tutaj jest oczywiste, że twój dysk zawiera 300 MiB EFI i prawdopodobnie 4096 bajtów nieprzydzielonego miejsca na dysku: (314598400-1024) / 512 = 614448 (= Rozpocznij główny wolumin bloku) 614448-40-8 = 614400 (= rozmiar EFI)
Odbuduj główny wolumin za pomocą:
Rozmiar głównego woluminu można określić na podstawie pierwszego (uszkodzonego i starego) wpisu drugiej tabeli GPT: (3000592961536/512) = 5860533128 to numer bloku. Następnie rozmiar jest obliczany przez 5860533128-614448 = 5859918680 bloków. Ponieważ 5859918680 można podzielić przez 8 (4096 rozmiar bloku fizycznego / 512 rozmiar bloku logicznego), jest to dobre przypuszczenie co do wielkości woluminu.
Najlepsze przypuszczenie to w końcu:
Drugi najlepszy sposób to:
Prawdopodobnie twój utracony wolumin zostanie teraz zamontowany. Sprawdź głośność za pomocą:
W razie potrzeby spróbuj naprawić wolumin.
Ponieważ „uszkodzony” dysk został przeniesiony do innej skrzynki i kontrolera dysku, rozmiar bloku logicznego został zmodyfikowany. Stara mapa partycji prawdopodobnie opiera się na logicznym rozmiarze bloku wynoszącym 4096 bajtów.
Aby odzyskać mapę partycji w starym przypadku (4096b), musisz wprowadzić następujące informacje, aby przywrócić GPT (na podstawie odpowiedzi Davida Andersona):
Utwórz nowy gpt:
Najpierw odbuduj wpis EFI za pomocą:
Odbuduj główny wolumin za pomocą:
ostateczna mapa partycji wygląda następująco:
Na podstawie części 4096b ta „retranslacja” po zainstalowaniu dysku w obudowie o rozmiarze bloku logicznego 512b w celu:
Utwórz nowy gpt:
Najpierw odbuduj wpis EFI za pomocą:
Odbuduj główny wolumin za pomocą:
Różni się to od pierwszej (zaakceptowanej) części mojej odpowiedzi, ale jest poprawna! Ponieważ EFI jest „pusty”, a nieprzydzielone bloki 262144 zawierają tylko zera, odpowiedź „pierwsza i jakoś zła” nie wpływa na działanie woluminu.
źródło
To nie jest odpowiedź, ale raczej przykład wyodrębnienia informacji o partycji GPT z prezentowanych danych. Wykorzystano pomocnicze (zapasowe) partycje GPT, ponieważ nie opublikowano zawartości podstawowych pozycji partycji GPT. Do interpretacji danych wykorzystano dokument „ Tabela partycji GUID ”.
Ostatni użyteczny LBA znajduje się w nagłówku GPT. Dzieje się tak pod adresem 8244. Wartość to
Początek drugorzędnych (zapasowych) wpisów GPT rozpoczyna się w następnym bloku. Wartość wynosi
Używając tego jako początku wpisu tablicy partycji EFI, otrzymuję następujące wartości. Początek partycji EFI, znaleziony pod adresem 3000592961568, to
Koniec partycji EFI, znaleziony pod adresem 3000592961576, to
Co daje rozmiar partycji wynoszący
Początek partycji HFS, znaleziony pod adresem 3000592961696, to
Koniec partycji HFS, znaleziony pod adresem 3000592961704, to
Co daje rozmiar partycji wynoszący
Jeśli zamierzasz użyć bloku o wielkości 512 bajtów, powyższe wyniki należy pomnożyć przez wartość 8, aby przekonwertować na 512 bajtów / blok.
źródło