Macbook Pro main volume not accessible - filesystem type FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF

Preface: I know there are lots of other questions about this on here, but they do not exactly match my situation and/or I do not have the technical knowledge to apply the answers to my situation. Thank you in advance for any help!

I have a Macbook Pro (Late 2011), running High Sierra. I partitioned the harddrive to install Linux. I later uninstalled Linux, and I seemingly did it in a bad way! My main volume now is unbootable, and it does not show up in the startup manager. I'm also not able to boot from Recovery, so to get to the terminal I've booted from a UBS flash drive with a MacOS installer on it.

I followed the steps from answers to similar questions on here, and I got to the step where I remove the volume with the gpt command, but then couldn't get any further. So the main partition doesn't show up on the diskutil list anymore (shown below).

Here is some relevant information from the terminal. For convenience of viewing, I've also included photos of these outputs (below).

[-bash-3.2# diskutil list disk0
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS                         650.0 MB   disk0s3
   3:       Microsoft Basic Data                         74.3 GB    disk0s4

[-bash-3.2# gpt -r show disk0
gpt show: disk0: Suspicious MBR at sector 0
       start        size  index  contents
           0           1         MBR  
           1           1         Pri GPT header  
           2          32         Pri GPT table
          34           6  
          40      409600      1  GPT part - C12A7328-F81F-BA4B-00A0C93EC93B
      409640  1318255112      2  MBR part 218 *[no contents because I removed this one]*
  1318664752     1269536      3  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  1319934288        1712
  1319936000   145210938      4  GPT part - EBD0A0A2-B9E5-4433-B7C0-6886B72699C7
  1465146938        2197
  1465149135          32         Sec GPT table
  1465149167           1         Sec GPT header

output from diskutil list output from got -r show disk0

The answer at this question has been the most helpful to me so far. However, I do not have an additional mac to do the hex dump that the answer calls for. If needed, I can borrow one from a friend, but I don't own one.

Any help would be greatly appreciated!


Output of the commands export LC_CTYPE="ASCII" and dd if=/dev/disk0s2 bs=1 count=64 | vis -c;echo:

64+0 records in
64+0 records out
64 bytes transferred in 0.377151secs (170 bytes/sec)
\M-6\0\^S\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

Solution 1:

You have hybrid partitioning. The question you have linked to does not. An indicator of hybrid partitioning is the output of the following warning message from the gpt command.

Suspicious MBR at sector 0

When a GUID partitioning is being used, there are two tables. The first is the MBR (Master Boot Record) partition table located at sector 0. This is followed by the GPT (GUID Partition Table) which occupies several sectors. When hybrid partition is being used, one or more entries in the GPT are duplicated in the MBR partition table. The gpt remove command can only remove a duplicate entry from the GPT. This means the other duplicate in the MBR partition table remains. The gpt add command will not add an entry to the GPT, if this entry overlaps an entry in the GPT or the MBR partition table. In your case, the duplicate entry in the MBR partition table was indicated by the following line output from the gpt -r show disk0 command.

     409640 1318255112      2  MBR part 218

Hybrid partitioning is required, if you need to BIOS boot an operating system on an older Macs that has a BIOS. For example, older Macs may need to BIOS boot certain versions of Windows. Below are answers which depend on whether Windows is installed.

Note: Since you will be booting to macOS Recovery from a flash drive, you probably can omit sudo from the commands given below. With older versions of macOS and OS X, the -f option for the gpt command may not be available. If the -f option is omitted, then you may need to enter the command diskutil unmountdisk disk0 before entering the gpt command.

Answer When Windows Is Not Installed

Since you only have macOS installed, you do not need hybrid partitioning. Below are the steps you can take to remove hybrid partitioning from disk0.

Enter the following command to edit the MBR partition table.

sudo fdisk -e /dev/disk0

When using the above command, the following warning messages can be ignored.

fdisk: could not open MBR file /usr/standalone/i386/boot0: No such file or directory
Device could not be accessed exclusively.
A reboot will be needed for changes to take effect.

This is an interactive command. Below are the values to enter into this command. A blank line indicates you are to accept the default values by pressing the return key. If you make a mistake, you can press the control+C key combination to exit fdisk without saving any changes.

auto hfs
edit 1
0
edit 1
ee

1

quit
yes

When finish, the sudo fdisk /dev/disk0 should produce the following output

Disk: /dev/disk0    geometry: 91201/255/63 [1465149168 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: EE    0   0   2 - 1023 254  63 [         1 - 1465149167] <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 

After removing the hybrid partitioning, you should be able to enter one of the next three commands to add back in the macOS partition.

Below is the first possible command for adding the macOS partition back into the GPT. If you are using Core Storage, encryption or APFS, then skip this command.

sudo gpt -f add -i 2 -b 409640 -s 1318255112 -t hfs disk0

If you are not using APFS and you are using encryption and/or Core Storage, then you should use command given below.

sudo gpt -f add -i 2 -b 409640 -s 1318255112 -t 53746F72-6167-11AA-AA11-00306543ECAC disk0

If you are using APFS, then you should substitute the command given below.

sudo gpt -f add -i 2 -b 409640 -s 1318255112 -t apfs disk0

Answer When Windows Is Installed

2011 model Macs require Windows to be installed to BIOS boot. This means you need to keep hybrid partitioning. In this case, the instructions below will remove the duplicate entry from the MBR partition table, then add this entry back into both the GPT and MBR partition table.

The command given below removes the duplicate entry from the MBR partition table.

sudo fdisk -e /dev/disk0

This is an interactive command. Below are the values to enter into this command. If you make a mistake, you can press the control+C key combination to exit fdisk without saving any changes.

edit 2
0
quit
yes

You should be able to enter one of the next three commands to add back in the macOS partition.

Below is the first possible command for adding the macOS partition back into the GPT. If you are using Core Storage, encryption or APFS, then skip this command.

sudo gpt -f add -i 2 -b 409640 -s 1318255112 -t hfs disk0

If you are not using APFS and you are using encryption and/or Core Storage, then you should use command given below.

sudo gpt -f add -i 2 -b 409640 -s 1318255112 -t 53746F72-6167-11AA-AA11-00306543ECAC disk0

If you are using APFS, then you should substitute the command given below.

sudo gpt -f add -i 2 -b 409640 -s 1318255112 -t apfs disk0

Below adds the duplicate back into the MBR partition table.

sudo fdisk -e /dev/disk0

The interactive entries for the above command are given below.

edit 2
af
n
409640
1318255112
quit
yes

Fixing the macOS Boot Partition

The partition with an index of 3 has a GPT partition type of 48465300-0000-11AA-AA11-00306543ECAC. This should be 426F6F74-0000-11AA-AA11-00306543ECAC. You need to change this the same way you did for the partition with an index of 2.

The remove command is given below.

sudo gpt -f remove -i 3 disk0

The add command is given below.

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