Możesz odtworzyć partycję systemową EFI (ESP) za pomocą gpt
narzędzia wiersza polecenia . Powinien rozpoczynać się od sektora 40 i powinien mieć długość 409600 sektorów (dokładnie 200 MB). Typ wpisu GPT powinien być C12A7328-F81F-11D2-BA4B-00A0C93EC93B
, a jeśli masz hybrydowy MBR, typ powinien być EE
. Format jest właściwie podzbiorem FAT, a nie HFS +. Możesz odczytać GPT za pomocą polecenia sudo gpt -r show disk0
w oknie terminala, to daje wynik, który wygląda mniej więcej tak:
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 447801712 2 GPT part - 48465300-0000-11AA-AA11-00306543ECAC
448211352 1269536 3 GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC
449480888 40753831
490234719 32 Sec GPT table
490234751 1 Sec GPT header
Możesz zobaczyć poprawną partycję EFI pod indeksem 1. Jeśli ten wiersz nie pasuje dokładnie, najłatwiejszym sposobem jest usunięcie partycji na jej miejscu i odtworzenie jej.
Zanim przejdziesz dalej, upewnij się, że wiesz, co robisz - możesz stracić dane, jeśli się zepsujesz.
Nie możesz edytować tabeli partycji, gpt
gdy partycje na dysku są zamontowane, więc będziesz musiał uruchomić system z innego dysku (np. Pamięci USB z instalatorem OSX) lub uruchomić komputer Mac w trybie dysku docelowego i wykonać partycjonowanie z inny Mac. Może być konieczne odmontowanie automatycznie zamontowanych woluminów diskutil unmountDisk disk0
przed kontynuowaniem i między poleceniami .
Aby usunąć „złą” partycję EFI, uruchom następującą komendę:
sudo gpt remove -i 1 disk0
Upewnij się, że disk0 to tak naprawdę dysk, który chcesz zmienić - liczby mogą się zmieniać między restartami. Działa to również tylko wtedy, gdy masz partycję inną niż ESP zamiast ESP - jeśli nie, usunięcie partycji 1 może być katastrofalne! W takim przypadku musisz przesunąć indeksy, ponieważ myślę, że ESP musi mieć indeks 1. Na podstawie tego, w twoim przypadku nie będzie to konieczne.
Po usunięciu ponownie dodaj partycję z poprawnym układem i wpisz:
sudo gpt add -b 40 -i 1 -s 409600 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B disk0
Powinno to uporządkować samą partycję, ale ponieważ utworzono partycję HFS na jej miejscu, należy również naprawić jej format.
Format partycji systemowej EFI jest tutaj udokumentowany przez Apple . Jak widać, zalecają klonowanie istniejącego ESP zamiast odtwarzania systemu plików za pomocą newfs_msdos
. Jeśli masz dysk zewnętrzny z tablicą partycji GPT (powinna go mieć pamięć instalacyjna OSX), możesz ją sklonować.
Upewnij się, że masz odpowiednio numer dysku i partycji, w przeciwnym razie możesz zastąpić dane:
Jeśli dysk1 jest dyskiem zewnętrznym i zawiera ESP jako pierwszą partycję (dysk1s1), a dysk0 jest dyskiem, którego ESP (dysk0s1) chcesz naprawić, uruchom następującą komendę:
sudo dd if=/dev/disk1s1 of=/dev/disk0s1
Spowoduje to skopiowanie każdego bloku ESP dysku1 i zastąpienie go odpowiednim blokiem ESP dysku0.
Alternatywnie, zagraj z newfs_msdos
.