Bạn có thể tạo lại Phân vùng hệ thống EFI (ESP) bằng gpt
công cụ dòng lệnh . Nó sẽ bắt đầu ở khu vực 40, và nó phải dài 409600 ngành (chính xác là 200MiB). Loại của mục nhập GPT phải là C12A7328-F81F-11D2-BA4B-00A0C93EC93B
và nếu bạn có MBR lai, loại đó sẽ có EE
. Định dạng thực sự là một tập hợp con của FAT, không phải HFS +. Bạn có thể đọc GPT bằng lệnh sudo gpt -r show disk0
trong cửa sổ Terminal, điều này tạo ra đầu ra trông giống như thế này:
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
Bạn có thể thấy phân vùng EFI chính xác tại chỉ mục 1. Nếu dòng đó không khớp chính xác, cách dễ nhất là xóa phân vùng ở vị trí của nó và tạo lại nó.
Hãy chắc chắn rằng bạn biết những gì bạn đang làm trước khi tiếp tục từ đây - bạn có thể mất dữ liệu nếu bạn làm hỏng.
Bạn không thể chỉnh sửa bảng phân vùng bằng cách sử dụng gpt
trong khi các phân vùng trên ổ đĩa được gắn kết, vì vậy bạn sẽ cần khởi động từ một ổ đĩa khác (ví dụ: thẻ USB với trình cài đặt OSX) hoặc chạy mac ở chế độ đĩa đích và thực hiện phân vùng từ mac khác. Bạn có thể cần ngắt kết nối bất kỳ khối lượng được gắn tự động bằng cách sử dụng diskutil unmountDisk disk0
trước khi tiếp tục và ở giữa các lệnh .
Để xóa phân vùng EFI "xấu" của bạn, hãy chạy lệnh này:
sudo gpt remove -i 1 disk0
Hãy chắc chắn rằng đĩa0 thực sự là đĩa bạn muốn thay đổi - các số có thể thay đổi giữa các lần khởi động lại. Ngoài ra, điều này sẽ chỉ hoạt động nếu bạn đã có phân vùng không phải là ESP ở vị trí của ESP - nếu không, việc xóa phân vùng 1 có thể là thảm họa! Trong trường hợp này, bạn sẽ cần di chuyển các chỉ số theo, vì tôi nghĩ rằng ESP phải có chỉ số 1. Theo âm thanh của nó, điều này sẽ không cần thiết trong trường hợp của bạn.
Sau khi xóa, thêm lại phân vùng với bố cục và loại chính xác:
sudo gpt add -b 40 -i 1 -s 409600 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B disk0
Điều này sẽ tự sắp xếp phân vùng, nhưng khi bạn đã tạo một phân vùng HFS ở vị trí của nó, bạn cũng cần sửa định dạng của nó.
Định dạng của Phân vùng hệ thống EFI được Apple ghi lại ở đây . Như bạn có thể thấy, họ khuyên bạn nên sao chép một bản ESP hiện có thay vì tạo lại hệ thống tệp newfs_msdos
. Nếu bạn có một ổ đĩa ngoài với bảng phân vùng GPT (nên cài đặt OSX), bạn có thể sao chép nó.
Đảm bảo rằng bạn có số đĩa và số phân vùng đúng cách hoặc bạn có thể ghi đè lên dữ liệu:
Nếu đĩa1 là ổ đĩa ngoài của bạn và nó chứa một ESP là phân vùng đầu tiên (đĩa1s1) và đĩa0 là ổ đĩa có ESP (đĩa0s1) bạn muốn sửa, hãy chạy lệnh này:
sudo dd if=/dev/disk1s1 of=/dev/disk0s1
Điều này sẽ sao chép từng khối ESP của đĩa1 và ghi đè lên khối tương ứng trong ESP của đĩa0 với nó.
Ngoài ra, hãy đánh bạc với newfs_msdos
.