Dữ liệu không được sao lưu, Loại phân vùng: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF


20

Tôi đã cố gắng cài đặt Linux trên MacBook cho lớp học của mình khi tôi bị brick máy tính của mình, hiện đang ở trạng thái không thể khởi động.

Tôi đã làm cho phân vùng của mình quá nhỏ, vì vậy tôi sẽ xóa và tạo một phân vùng lớn hơn. Tuy nhiên, Disk Utility không cho phép tôi xóa phân vùng nhỏ. Tôi đã làm theo hướng dẫn từ /apple//a/238088/236252

Tuy nhiên, tôi không chỉ không thể xóa nó mà khi khởi động lại tôi nhận ra phân vùng chính của mình (nằm trên cùng một đĩa) đã đổi thành FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF và tôi không có tùy chọn nào để khởi động. (Tôi chắc chắn rằng tôi đã thực hiện lệnh trên đĩa và phân vùng chính xác)

Tôi đã thấy một số chủ đề tương tự, nhưng ổ đĩa khởi động chính của tôi là một trong đó đã bị hỏng.

Tôi không muốn mất bất kỳ dữ liệu nào. Tôi không phải là người hiểu biết thiết bị đầu cuối nhất, vì vậy BẤT K help sự giúp đỡ nào được đánh giá cao và tôi sẽ vui lòng cung cấp bất kỳ thông tin bổ sung nào!

(Đĩa 0, phân vùng 2 là phân vùng chính của tôi và chỉ có một phân vùng tôi quan tâm)

Dưới đây là kết quả của danh sách $ Diskutil$ gpt -r hiển thị đĩa0 .

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây


CẬP NHẬT :: Tôi đã làm theo hướng dẫn của @klanomath. Ở bước cuối cùng tôi đã nhận được lỗi sau:

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 

CẬP NHẬT CUỐI CÙNG: THÀNH CÔNG!

Tôi chỉ muốn cảm ơn @klanomath vì đã giúp tôi vượt qua toàn bộ quá trình này. Anh ấy đã dành 11 giờ TeamViewing với tôi cho đến khi không chỉ các tệp của tôi có thể truy cập được mà cho đến khi tôi có thể truy cập vào máy tính của mình trước khi xảy ra sự cố này (và đây là sau 5 giờ tương ứng với email).

Đối với bất kỳ độc giả tương lai nào với vấn đề này: xin đừng bỏ cuộc, nó có thể được sửa chữa!


Có, tôi muốn xóa phân vùng xóa. Tôi đã xem bài đăng đó, nhưng tôi lo ngại rằng "gpt remove" sẽ xóa nội dung đĩa của tôi?
Halfway

Vâng! Tôi đã sao lưu mọi thứ với Time Machine ngay bây giờ. Không bao giờ nữa
Halfway

;-) ............
klanomath

Câu trả lời:


25

Để thêm một câu trả lời phù hợp chính xác với trường hợp của bạn, tôi đã sửa đổi một chút câu trả lời của mình trong " bản sao " được liên kết và đăng lại ở đây.


Phân vùng thứ hai cũng như phân vùng thứ ba của đĩa bên trong của bạn có loại phân vùng sai, dữ liệu của bạn có thể sẽ không bị mất.

Phân vùng OS X có khả năng khởi động (ngoại trừ Recovery HD) hoặc có GUID 48465300-0000-11AA-AA11-00306543ECAC cho phân vùng OS X tiêu chuẩn hoặc phân vùng GUID 53746F72-6167-11AA-AA11-00306543ECAC cho phân vùng CoreStorage. FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF là một loại phân vùng không xác định (nhưng không có phân vùng như 000000-0000-0000 .... một).

Khối đầu tiên của phân vùng OS X tiêu chuẩn không chứa số không, khối đầu tiên của phân vùng CoreStorage chứa một số số không. Để có được 3 khối đầu tiên của phân vùng, bạn phải sử dụng thay thế cho hexdump / xxd (cả hai đều không có trong ổ đĩa khởi động Recovery Mode / OS X Installer). Điều tốt nhất tôi đã tìm thấy là dd if=/dev/diskXsY count=3 | vis -c.

Bảng phân vùng GUID có thể được sửa đổi với gpt. gpt chỉ ghi vào 34 khối đầu tiên và 33 khối cuối cùng của đĩa (512) hoặc 6 khối đầu tiên và 5 khối cuối cùng của đĩa 4k. Sửa đổi bảng phân vùng (thậm chí sai) không làm thay đổi nội dung của bất kỳ ổ đĩa nào trên đĩa của bạn, nếu bạn không khởi tạo hoặc sửa chữa ổ đĩa / đĩa theo yêu cầu. Bạn có thể xác minh nó mặc dù.


  • Khởi động vào Chế độ khôi phục Internet hoặc ổ đĩa khởi động Trình cài đặt OS X
  • Mở Terminal trong menu tiện ích> Terminal
  • Nhận tổng quan với diskutil list
  • Nhận tổng quan về đĩa bên trong của bạn với mã định danh đĩa được tìm thấy trong lệnh trước đó. Dưới đây tôi giả sử định danh đĩa của đĩa bên trong của bạn là đĩa0 (thay thế nó bằng cái bạn đã tìm thấy trong môi trường của bạn)

    gpt -r show disk0
    
  • Ngắt kết nối đĩa0 với diskutil umountDisk disk0
  • vis 3 khối đầu tiên của phân vùng FFFF ...:

    dd if=/dev/disk0s2 count=3 | vis -c
    
    1. Nếu bạn đã có một phân vùng tiêu chuẩn trước đó thì 1024 Byte đầu tiên chỉ chứa không thể in được (số không): \ 0 \ 0 ... Tại ~ Byte 1030, bạn sẽ thấy chuỗi sau: \ 0HFSJ \ 0

    2. Nếu bạn có phân vùng CoreStorage, một số số không trong 512 byte đầu tiên và chuỗi CS ( ...\0CS\^A...) được hiển thị:

      \^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\^]...
      
  • Bây giờ loại bỏ phân vùng thứ ba, thứ tư và thứ hai:

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

    Nếu bạn nhận được thông báo lỗi như "tài nguyên bận", chỉ cần ngắt kết nối lại đĩa hoặc ngắt kết nối các ổ cứng đầu diskutil umount disk0sX.

    Thêm lại phân vùng phục hồi với loại thích hợp nhưng cùng số chỉ mục, bắt đầu khối và kích thước trước đó:

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

    Thêm lại phân vùng chính với loại thích hợp nhưng cùng số chỉ mục, bắt đầu khối và kích thước trước đó:

    Phân vùng OS X bình thường (nếu bạn đã tìm thấy dấu vết điển hình của phân vùng bình thường trong dd ... visbước):

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

    hoặc (nếu bạn đã tìm thấy dấu vết điển hình của phân vùng CoreStorage):

    gpt add -i 2 -b 409640 -s 226802864 -t 53746F72-6167-11AA-AA11-00306543ECAC disk0
    
  • Đĩa của bạn cuối cùng sẽ trông như thế này nếu bạn đã tìm thấy phân vùng OS X tiêu chuẩn:

        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
    

    hoặc điều này, nếu bạn đã tìm thấy một khối 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
    
  • Cuối cùng xác minh / sửa chữa đĩa với diskutil verifyDisk disk0và / hoặc diskutil verifyVolume disk0s2. Nếu cần sửa chữa, hãy sử dụng sửa chữa (thay vì xác minh) làm tiền tố trong các lệnh trên nhưng liên hệ với tôi trước khi sửa chữa và gửi cho tôi thông báo lỗi .


Các nghiên cứu sâu hơn thông qua các phiên TeamViewer cho thấy phân vùng EFI và phân vùng Recovery HD bị hỏng. Khối lượng chính được mã hóa. Recovery HD chứa khóa FileVault trung gian đặc biệt sau đó. Nếu thiếu khóa, hệ thống chính sẽ không khởi động. Có thể mở khóa ổ đĩa mặc dù với diskutil cs unlockVolume ....

Sau khi cài đặt macOS đầy đủ vào ổ đĩa ngón tay cái và khởi động vào nó, phân vùng EFI và Recovery HD của một ổ đĩa không phải FileVault khác (thực tế là của một máy ảo Sierra) đã được đưa vào ổ đĩa bị hỏng. Vẫn được khởi động từ ổ ngón tay cái, âm lượng FileVault được hoàn nguyên về âm lượng tiêu chuẩn bằng cách nhấp chuột phải vào âm lượng trong Finder, chọn "Giải mã âm lượng" và nhập mật khẩu người dùng hợp lệ. Đây phải là mật khẩu của tài khoản người dùng đủ điều kiện trên ổ đĩa FileVault. Các phương pháp khác để giải mã âm lượng như diskutil cs revert lvUUIDhoặc diskutil cs decryptVolume lvUUID- chỉ được thử nghiệm trong một máy ảo - dường như không hoạt động. Điều này có thể là một hạn chế của VM mặc dù.

Để mở rộng phân vùng chính (đĩa0s2) lên kích thước đầy đủ, hãy sử dụng Disk Utility hoặc diskutil resizeVolume ...lệnh.

Âm lượng ban đầu không xuất hiện trong Tùy chọn hệ thống> Đĩa khởi động, nhưng altviệc mở rộng máy Mac đã tiết lộ âm lượng chính. Điều này có lẽ đã ban phước lại cho boot.efi của âm lượng. Âm lượng (bây giờ là tiêu chuẩn) lại xuất hiện trong Startup Disk.


Cảm ơn bạn đã dành thời gian để giúp đỡ. Tôi chỉ muốn rõ ràng về điều này: trong bài đăng của bạn ở trên, cho viên đạn thứ 7 của bạn, khi bạn nói "bây giờ hãy xóa phân vùng thứ ba, thứ tư và thứ hai" bằng "gpt remove", sẽ không xóa dữ liệu của tôi trên phân vùng thứ hai (đó là phân vùng tôi quan tâm)?
Halfway

Xin lỗi tôi đã bỏ lỡ! Tôi hơi điên cuồng ngay bây giờ
Halfway

Tôi đã nhận được một lỗi ở bước cuối cùng trong khi cố gắng xác minh đĩa0. 'Lỗi: -69766: Bản đồ phân vùng cần được sửa chữa vì có vấn đề với hệ thống tệp của phân vùng hệ thống EFI. Lỗi cơ sở: 8: Báo cáo POSIX: Lỗi định dạng exe '
HalfwayThere

@HalfwayThere Đây là một lỗi xấu nhưng MacBook của bạn vẫn có thể được khôi phục về trạng thái khởi động. Chỉ cần cố gắng để khởi động nó. Lỗi EFI có lẽ là kết quả của quá trình cài đặt Linux và phải được khắc phục bằng các công cụ khác / trong bước 2 ...
klanomath

1
+1 Đây là một câu trả lời tuyệt vời! Nó không chỉ giải quyết vấn đề mà còn giáo dục người dùng trên đường đi. Bạn đã thực sự nỗ lực hết mình để giúp đỡ OP và tôi hy vọng bạn sẽ nhận được nhiều phiếu bầu hơn cho việc này! :)
Monomeeth

1

Vấn đề này cũng có thể xảy ra trong phiên APFS High Sierra sống ! Tôi đã gặp vấn đề này ngày hôm qua, sau khi thực hiện các thay đổi với ứng dụng và diskutillệnh của Disk Utility , tôi đã tìm thấy điều này:

    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

Tôi không nghĩ rằng nó sẽ khởi động lại trong cấu hình đó (hoặc có thể với bảng sao lưu GPT? Không có ý tưởng). Nhờ giải thích ở trên, tôi có thể giải quyết vấn đề trong phiên trực tiếp, nhưng tôi phải sử dụng một giải pháp hơi khác ( giải pháp này chỉ hoạt động với SIP bị vô hiệu hóa, nếu được bật, bạn sẽ phải khởi động lại, vô hiệu hóa và sử dụng giải pháp trước đó . , vấn đề này có thể liên quan đến SIP bị vô hiệu hóa, vì vậy nó sẽ không xảy ra trên SIP được kích hoạt? Tôi không biết.)

Ngay cả khi disk0chưa được kết nối, có vẻ như gptsẽ không cho phép sửa đổi GPT trong phiên trực tiếp:

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

Vì vậy, thay vào đó tôi đã sử dụng một công cụ của bên thứ ba gdisk(tôi đã nhận nó thông qua homebrew) để sửa đổi loại 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.

Kiểm tra nó:

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

Sau đó kiểm tra lần cuối có diskutil verifyDisk disk0diskutil verifyVolume disk0s2không có cảnh báo hoặc lỗi. Khởi động lại thành công.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.