Brak kopii zapasowej danych, typ partycji: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF

20

Próbowałem zainstalować Linuksa na moim MacBooku na zajęcia, kiedy zamurowałem komputer, który jest teraz w stanie niemożliwym do uruchomienia.

Zrobiłem zbyt małą partycję, więc zamierzałem ją usunąć i utworzyć większą. Jednak Narzędzie dyskowe nie pozwoliło mi usunąć małej partycji. Postępowałem zgodnie z instrukcjami z /apple//a/238088/236252

Jednak nie tylko nadal nie mogłem go usunąć, ale po ponownym uruchomieniu uświadomiłem sobie, że moja główna partycja (znajdująca się na tym samym dysku) zmieniła się w FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF i nie miałem opcji uruchamiania. (Jestem pewien, że wykonałem polecenie na odpowiednim dysku i partycji)

Widziałem podobne wątki, ale mój główny dysk startowy jest uszkodzony.

Nie chcę stracić żadnych danych. Nie jestem najbardziej bystry, więc doceniam KAŻDĄ pomoc i uprzejmie udzielę wszelkich dodatkowych informacji!

(Dysk 0, partycja 2 to moja główna partycja i tylko na tym mi zależy)

Poniżej znajdują się wyniki listy $ diskutil i $ gpt -r pokazują dysk0 .

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj


AKTUALIZACJA: Postępowałem zgodnie z instrukcjami @klanomath. W ostatnim kroku otrzymałem następujący błąd:

Checking prerequisites
Checking the partition list
Checking for an EFI system partition
Checking the EFI system partition's size
Checking the EFI system partition's file system
Problems were found with the partition map which might prevent booting
Error: -69766: The partition map needs to be repaired because there's a problem with the EFI system partition's file system
Underlying error: 8: POSIX reports: Exec format error 

OSTATECZNA AKTUALIZACJA: SUKCES!

Chciałem tylko podziękować @klanomath za pomoc w tym procesie. Spędził ze mną 11 godzin TeamViewing, dopóki nie tylko moje pliki były dostępne, ale dopóki nie mogłem uzyskać dostępu do mojego komputera, tak jak przed tą całą klęską (i to było po 5 godzinach korespondencji e-mail).

Do każdego przyszłego czytelnika z tym problemem: PROSZĘ nie poddawaj się, można to naprawić!

W połowie drogi
źródło
Tak, chciałbym usunąć partycję usuwania. Spojrzałem na ten post, ale martwiłem się, że „usunięcie gpt” spowoduje usunięcie zawartości dysku?
połowie drogi Tam
Tak! Teraz utworzyłem kopię zapasową wszystkiego za pomocą Time Machine. Nigdy więcej
połowie drogi Jest
;-) ............
klanomath

Odpowiedzi:

25

Aby dodać odpowiedź dokładnie dopasowany do przypadku I nieco zmodyfikowany moją odpowiedź w powiązana „ duplikat ” i zamieścił go tutaj ponownie.


Druga, a także trzecia partycja dysku wewnętrznego ma niewłaściwy typ partycji, prawdopodobnie Twoje dane nie zostaną utracone.

Startowa partycja OS X (z wyjątkiem Recovery HD) ma GUID 48465300-0000-11AA-AA11-00306543ECAC dla standardowej partycji OS X lub GUID 53746F72-6167-11AA-AA11-00306543ECAC dla partycji CoreStorage. FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFFF jest nieznanym typem partycji (ale nie ma takiej partycji jak ta 000000-0000-0000 .... jedna).

Pierwszy blok standardowej partycji OS X nie zawiera niezerowych, pierwszy blok partycji CoreStorage zawiera pewne niezerowe. Aby uzyskać pierwsze 3 bloki partycji, musisz użyć substytutu hexdump / xxd (oba nie są dostępne w trybie rozruchowym dysku odzyskiwania w trybie odzyskiwania / OS X). Najlepsze, co znalazłem, to dd if=/dev/diskXsY count=3 | vis -c.

Tabelę partycji GUID można modyfikować za pomocą gpt. gpt zapisuje tylko do pierwszych 34 i ostatnich 33 bloków dysku (512) lub pierwszych 6 i ostatnich 5 bloków dysku 4k. Modyfikowanie tabeli partycji (nawet fałszywie) nie zmienia zawartości żadnego woluminu na dysku, jeśli nie zainicjujesz ani nie naprawisz woluminu / dysku na żądanie. Możesz to jednak zweryfikować.


  • Uruchom system w trybie odzyskiwania Internetu lub dysk rozruchowy instalatora systemu OS X.
  • Otwórz Terminal w pasku menu Narzędzia> Terminal
  • Uzyskaj przegląd dzięki diskutil list
  • Uzyskaj przegląd dysku wewnętrznego za pomocą identyfikatora dysku znalezionego w poprzednim poleceniu. Poniżej zakładam, że identyfikator dysku wewnętrznego to disk0 (zamień go na ten, który znalazłeś w swoim środowisku)

    gpt -r show disk0
    
  • Odmontuj dysk0 za pomocą diskutil umountDisk disk0
  • względem pierwszych 3 bloków partycji FFFF ...

    dd if=/dev/disk0s2 count=3 | vis -c
    
    1. Jeśli miałeś wcześniej partycję standardową, pierwsze 1024 bajty zawierają tylko niedrukowalne (zera): \ 0 \ 0 ... W ~ Byte 1030 zobaczysz następującą sekwencję: \ 0HFSJ \ 0

    2. Jeśli miałeś partycję CoreStorage, niektóre niezerowe w pierwszych 512 bajtach i ciąg CS ( ...\0CS\^A...) są wyświetlane:

      \^U\^D\^A\M-s\M^?\M^?\M^?\M^?\^A\0\^P\0\0\0\M-W\^A\a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^B\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\M^Pu\M-\7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0CS\^A\0\0\0\^D\0\0\^P\0\0\0\0@\0X\M-7}\^C\0\0\0\0X\M-;}\^C\0\0\0\0X\M-?}\^C\0\0\0\0X\M-C}\^C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\^P\0\0\0\^B\0\0\0006j v\^R\M-+\^U\M^[\f\M^CdG\M-y\^]...
      
  • Teraz usuń trzecią, czwartą i drugą partycję:

    diskutil umountDisk disk0
    gpt remove -i 3 disk0
    diskutil umountDisk disk0
    gpt remove -i 4 disk0
    gpt remove -i 2 disk0
    

    Jeśli pojawi się komunikat o błędzie „zasób zajęty”, po prostu odmontuj dysk lub odmontuj uparte woluminy diskutil umount disk0sX.

    Ponownie dodaj partycję odzyskiwania z odpowiednim typem, ale z tym samym numerem indeksu, początkowym blokiem i rozmiarem, jaki wcześniej:

    gpt add -i 3 -b 227212504 -s 1269536 -t 426F6F74-0000-11AA-AA11-00306543ECAC disk0
    

    Dodaj ponownie partycję główną z odpowiednim typem, ale z tym samym numerem indeksu, początkowym blokiem i rozmiarem, jaki wcześniej:

    Albo normalna partycja OS X (jeśli w dd ... viskroku znalazłeś typowe ślady normalnej partycji ):

    gpt add -i 2 -b 409640 -s 226802864 -t 48465300-0000-11AA-AA11-00306543ECAC disk0
    

    lub (jeśli znalazłeś typowe ślady partycji CoreStorage):

    gpt add -i 2 -b 409640 -s 226802864 -t 53746F72-6167-11AA-AA11-00306543ECAC disk0
    
  • Twój dysk powinien w końcu wyglądać tak, jeśli znalazłeś standardową partycję OS X:

        start       size  index  contents
            0          1         PMBR
            1          1         Pri GPT header
            2         32         Pri GPT table
           34          6         
           40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
       409640  226802864      2  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
    227212504    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC        
    228482040    8496103
    236978143         32         Sec GPT table
    236978175          1         Sec GPT header
    

    lub to, jeśli znalazłeś wolumin CoreStorage:

        start       size  index  contents
            0          1         PMBR
            1          1         Pri GPT header
            2         32         Pri GPT table
           34          6         
           40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
       409640  226802864      2  GPT part - 53746F72-6167-11AA-AA11-00306543ECAC
    227212504    1269536      3  GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC        
    228482040    8496103
    236978143         32         Sec GPT table
    236978175          1         Sec GPT header
    
  • Na koniec sprawdź / napraw dysk za pomocą diskutil verifyDisk disk0i / lub diskutil verifyVolume disk0s2. Jeśli potrzebna jest naprawa, użyj naprawy (zamiast weryfikacji) jako przedrostka w powyższych poleceniach, ale skontaktuj się ze mną przed naprawą i wyślij mi komunikat o błędzie .


Dalsze badania za pośrednictwem sesji TeamViewer wykazały, że partycja EFI i partycja Recovery HD są uszkodzone. Główny wolumin jest szyfrowany. Odzyskiwanie HD zawiera wtedy specjalny pośredni klucz FileVault. Jeśli brakuje klucza, główny system nie uruchomi się. Można było jednak odblokować dysk za pomocą diskutil cs unlockVolume ....

Po zainstalowaniu pełnego systemu macOS na pendrive'ie i uruchomieniu go, partycja EFI i Recovery HD innego napędu innego niż FileVault (właściwie napędu Sierra VM) zostały przeniesione na uszkodzony dysk. Wciąż uruchamiany z pendrive'a wolumin FileVault został przywrócony do standardowego, klikając prawym przyciskiem myszy wolumin w Finderze, wybierając „Odszyfruj wolumin” i wprowadzając prawidłowe hasło użytkownika. Musi to być hasło uprawnionego konta użytkownika w woluminie FileVault. Inne metody odszyfrowywania woluminu, takie jak - diskutil cs revert lvUUIDlub diskutil cs decryptVolume lvUUIDprzetestowane tylko na maszynie wirtualnej - nie działały. Może to być jednak ograniczenie maszyn wirtualnych.

Aby rozwinąć partycję główną (disk0s2) do pełnego rozmiaru, użyj Narzędzia dyskowego lub diskutil resizeVolume ...polecenia.

Wolumin początkowo nie pojawił się w Preferencjach systemowych> Dysk startowy, ale alturuchomienie komputera Mac odsłoniło główny wolumin. To prawdopodobnie ponownie pobłogosławiło boot.efi woluminu poprawnie. Wolumin (teraz standardowy) pojawi się ponownie na dysku startowym.

klanomath
źródło
Dziękujemy za poświęcenie czasu na pomoc. Chciałem tylko wyrazić się jasno: w swoim poście powyżej, w przypadku siódmego pocisku, kiedy mówisz „teraz usuń trzecią, czwartą i drugą partycję” z „gpt remove”, czy to nie spowoduje usunięcia moich danych na druga partycja (o którą mi chodzi)?
połowie drogi Tam
Przepraszam, że za tym tęskniłem! Jestem teraz trochę
szalony
Wystąpił błąd w ostatnim kroku podczas próby sprawdzenia disk0. „Błąd: -69766: Mapa partycji musi zostać naprawiona, ponieważ występuje problem z systemem plików partycji systemowej EFI. Błąd bazowy: 8: Raporty POSIX: Błąd formatu exe '
połowie
@HalfwayThere To jest brzydki błąd, ale MacBook może być nadal przywracany do stanu rozruchowego. Po prostu spróbuj go uruchomić. Błąd EFI jest prawdopodobnie wynikiem instalacji Linuksa i musi zostać rozwiązany za pomocą innych narzędzi / w drugim kroku ...
klanomath
1
+1 To świetna odpowiedź! Nie tylko rozwiązuje to problem, ale także edukuje użytkowników po drodze. Naprawdę starałeś się pomóc OP i mam nadzieję, że uzyskasz o wiele więcej głosów na to! :)
Monomeeth
1

Ten problem może wystąpić również podczas żywej sesji APFS High Sierra ! Wczoraj dostałem ten problem, po wprowadzeniu zmian w aplikacji i diskutilpoleceniach Narzędzia dyskowego znalazłem:

    sh-3.2# diskutil list
    /dev/disk0 (internal, physical):
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      GUID_partition_scheme                        *500.3 GB   disk0
       1:                        EFI EFI                     209.7 MB   disk0s1
       2: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF               60.0 GB    disk0s2

    /dev/disk1 (synthesized):
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      APFS Container Scheme -                      +60.0 GB    disk1
                                     Physical Store disk0s2
       1:                APFS Volume APPLESSD                47.1 GB    disk1s1
       2:                APFS Volume Preboot                 19.4 MB    disk1s2
       3:                APFS Volume Recovery                517.8 MB   disk1s3
       4:                APFS Volume VM                      1.1 GB     disk1s4

    sh-3.2# gpt -r show /dev/disk0
          start       size  index  contents
              0          1         PMBR
              1          1         Pri GPT header
              2         32         Pri GPT table
             34          6         
             40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
         409640  117111080      2  GPT part - FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
      117520720  859584307         
      977105027         32         Sec GPT table
      977105059          1         Sec GPT header

Nie sądzę, aby uruchomił się ponownie w tej konfiguracji (a może z tabelą kopii zapasowych GPT? Nie mam pojęcia). Dzięki powyższemu wyjaśnieniu mogłem rozwiązać problem podczas sesji na żywo, ale musiałem użyć nieco innego rozwiązania ( to rozwiązanie działa tylko z wyłączonym SIP, jeśli jest włączone, będziesz musiał ponownie uruchomić, wyłączyć i użyć poprzedniego rozwiązania . , ten problem może być związany z wyłączonym SIP, więc nie pojawi się na włączonym SIP? Nie wiem.)

Nawet przy disk0odmontowanym wydaje się, gptże nie pozwala zmodyfikować GPT podczas sesji na żywo:

sh-3.2# gpt remove -i 2 disk0
gpt remove: unable to open device 'disk0': Resource busy

Zamiast tego użyłem narzędzia innej firmy gdisk(mam go przez homebrew), aby zmodyfikować typ disk0s2:

sh-3.2# gdisk /dev/disk0
GPT fdisk (gdisk) version 1.0.3

Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): i
Partition number (1-2): 2
Partition GUID code: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF (Unknown)
Partition unique GUID: B40FA371-D92C-4EBF-B846-B0A9FB6DCD71
First sector: 409640 (at 200.0 MiB)
Last sector: 117520719 (at 56.0 GiB)
Partition size: 117111080 sectors (55.8 GiB)
Attribute flags: 0000000000000000
Partition name: 'Apple_HFS_Untitled_2'

Command (? for help): t
Partition number (1-2): 2
Current type is 'Unknown'
Hex code or GUID (L to show codes, Enter = af00): 7C3457EF-0000-11AA-AA11-00306543ECAC    
Changed type of partition to 'Unknown'

Command (? for help): i
Partition number (1-2): 2
Partition GUID code: 7C3457EF-0000-11AA-AA11-00306543ECAC (Unknown)
Partition unique GUID: B40FA371-D92C-4EBF-B846-B0A9FB6DCD71
First sector: 409640 (at 200.0 MiB)
Last sector: 117520719 (at 56.0 GiB)
Partition size: 117111080 sectors (55.8 GiB)
Attribute flags: 0000000000000000
Partition name: 'Apple_HFS_Untitled_2'

Command (? for help): w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/disk0.
Warning: Devices opened with shared lock will not have their
partition table automatically reloaded!
Warning: The kernel may continue to use old or deleted partitions.
You should reboot or remove the drive.
The operation has completed successfully.

Sprawdzam to:

sh-3.2# gpt -r show /dev/disk0
      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34          6         
         40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
     409640  117111080      2  GPT part - 7C3457EF-0000-11AA-AA11-00306543ECAC
  117520720  859584307         
  977105027         32         Sec GPT table
  977105059          1         Sec GPT header
sh-3.2# diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.3 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         60.0 GB    disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +60.0 GB    disk1
                                 Physical Store disk0s2
   1:                APFS Volume APPLESSD                47.1 GB    disk1s1
   2:                APFS Volume Preboot                 19.4 MB    disk1s2
   3:                APFS Volume Recovery                517.8 MB   disk1s3
   4:                APFS Volume VM                      1.1 GB     disk1s4

Następnie sprawdź ostatni raz z ostrzeżeniem lub błędami diskutil verifyDisk disk0i diskutil verifyVolume disk0s2bez nich. Ponowne uruchomienie zakończyło się powodzeniem.

Witaj świecie
źródło