Apple Event: May 7th at 7 am PT

Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

Bootcamp partition not Bootable and Master Boot Record Problem

I have successfully installed Bootcamp and Windows 7 on my old MacbookPro7.1 (mid 2010, High Sierra) for a special project. However, I currently cannot boot into Windows since the bootcamp partition is no longer appearing in the boot menu. Furthermore, attempts to fix the Master Boot Record (MBR) using fdisk have now resulted in normal boot not even booting into MacOS normally. I have to go through the boot menu (Alt key) to select the MacOS partition explicitly. Before attempting any further fixes to this situation, and making it worse, I am asking for help here to do the following:


1) Recover normal boot function for the MacOS partition, and

2) Recover a bootable Bootcamp partition, if possible.


Background (How did I get to this point):


After installing and updating Windows 7, I ran out of space in the Bootcamp partition. I attempted (unwisely?) to expand the Bootcamp partition using a workaround: Create a 3rd partition using MacOS Disk Utility with the intention to merge that space into the Windows partition using a Windows application (MiniTool Partition Wizard). However, after creating the 3rd partition, the boot menu no longer had the Bootcamp partition as an option. I unfortunately had not created a backup yet for the new Windows installation so I am trying to avoid the long and tedious re-installation process if possible.


I researched the issue and discovered that the problem was loss of the Bootcamp partition bootable status likely due to the Disk Utility repartitioning process and its affects on the Master Book Record. The solutions pointed to the use of gdisk or fdisk in Terminal to make my Bootcamp partition bootable again.


I attempted these commands in the MacOS session Terminal:

sudo gpt show /dev/disk0

sudo fdisk /dev/disk0

The system generated the following errors:

gpt show: unable to open device '/dev/disk0': Operation not permitted

fdisk: /dev/disk0: Operation not permitted


I shifted efforts to a Terminal session in Recovery Mode (cmd+R), which now worked:

"gpt show /dev/disk0" now gave the correct report showing MacOS in partition 2 and Bootcamp in partition 4

"fdisk /dev/disk0" allowed me to see the partition map (EE type in partition 1, 00 in partitions 2-4)


Additional fdisk commands allowed me to change partition 4 type to 07, set the bootable flag to yes and write the changes.


Attempt to reboot with these changes resulted in boot to a black screen with flashing underscore (not good). Restart with Alt to boot menu and explicit selection of MacOS partition worked okay.


Disk Utility shows the Bootcamp partition still not bootable.... I went into Terminal and removed the MBR edits as much as I could, but I did not see a way to remove the bootable flag and left it pointing to Partition 1.


Reboot resulted in startup to a gray screen with no advance. I restarted through the boot menu again.


Any help anyone can offer is appreciated.


MacBook Pro

Posted on May 5, 2021 2:02 AM

Reply
Question marked as Best reply

Posted on May 5, 2021 4:15 PM

RedFox99 wrote:

Are the instructions from this site appropriate in my case:

No.


Rebuild MBR to match the new GPT information thus resetting the Hybrid MBR. Use defaults for other questions (like partition codes). The only values that need modifications are the Boot flags and step 10. Accept all other defaults that Gdisk offers. Please see the sample Q&A as an example. These steps can be repeated if you make a mistake before you get to Step 12, otherwise start from Step 1 for these steps. Step 6 has numbers which are typed with a space between the numbers. Please see the sample Q&A before you execute these steps.

  1. Sudo gdisk /dev/rdisk0
  2. P (Print list of parts)
  3. R (Recover)
  4. O (print current Hybrid MBR)
  5. H (chooses Hybrid)
  6. Partitions numbers to be hybridized: 2 3 4
  7. Y (Good for GRUB question)
  8. N (part 2 boot flag)
  9. N (part 3 boot flag)
  10. Y (part 4 boot flag make NTFS bootable partition)
  11. O (print current Hybrid MBR)
  12. W (Write the new MBR)
  13. Y (Yes! write the new MBR)
  14. Reboot


Here is sample Q&A for this section. Please notice the Press Enter/Return.


Place EFI GPT (0xEE) partition first in MBR (good for GRUB)? (Y/N): Y

Creating entry for GPT partition #2 (MBR partition #2)
Enter an MBR hex code (default AF): Press Enter/Return
Set the bootable flag? (Y/N): N

Creating entry for GPT partition #3 (MBR partition #3)
Enter an MBR hex code (default AB): Press Enter/Return
Set the bootable flag? (Y/N): N

Creating entry for GPT partition #4 (MBR partition #4)
Enter an MBR hex code (default 07): Press Enter/Return
Set the bootable flag? (Y/N): Y


Test 1 - Does Bootcamp Volume show up in Finder?

Test 2 - Can you see files in Bootcamp Volume?

Test 3 - Can you select Bootcamp in System Preferences -> Startup Disk?

Test 4 - If Test 3 is successful, select Bootcamp and Click Restart.


If Windows does not boot, after these steps, then we need to use Bootrec.exe to run /fixMBR and /fixBoot.

Similar questions

15 replies
Question marked as Best reply

May 5, 2021 4:15 PM in response to RedFox99

RedFox99 wrote:

Are the instructions from this site appropriate in my case:

No.


Rebuild MBR to match the new GPT information thus resetting the Hybrid MBR. Use defaults for other questions (like partition codes). The only values that need modifications are the Boot flags and step 10. Accept all other defaults that Gdisk offers. Please see the sample Q&A as an example. These steps can be repeated if you make a mistake before you get to Step 12, otherwise start from Step 1 for these steps. Step 6 has numbers which are typed with a space between the numbers. Please see the sample Q&A before you execute these steps.

  1. Sudo gdisk /dev/rdisk0
  2. P (Print list of parts)
  3. R (Recover)
  4. O (print current Hybrid MBR)
  5. H (chooses Hybrid)
  6. Partitions numbers to be hybridized: 2 3 4
  7. Y (Good for GRUB question)
  8. N (part 2 boot flag)
  9. N (part 3 boot flag)
  10. Y (part 4 boot flag make NTFS bootable partition)
  11. O (print current Hybrid MBR)
  12. W (Write the new MBR)
  13. Y (Yes! write the new MBR)
  14. Reboot


Here is sample Q&A for this section. Please notice the Press Enter/Return.


Place EFI GPT (0xEE) partition first in MBR (good for GRUB)? (Y/N): Y

Creating entry for GPT partition #2 (MBR partition #2)
Enter an MBR hex code (default AF): Press Enter/Return
Set the bootable flag? (Y/N): N

Creating entry for GPT partition #3 (MBR partition #3)
Enter an MBR hex code (default AB): Press Enter/Return
Set the bootable flag? (Y/N): N

Creating entry for GPT partition #4 (MBR partition #4)
Enter an MBR hex code (default 07): Press Enter/Return
Set the bootable flag? (Y/N): Y


Test 1 - Does Bootcamp Volume show up in Finder?

Test 2 - Can you see files in Bootcamp Volume?

Test 3 - Can you select Bootcamp in System Preferences -> Startup Disk?

Test 4 - If Test 3 is successful, select Bootcamp and Click Restart.


If Windows does not boot, after these steps, then we need to use Bootrec.exe to run /fixMBR and /fixBoot.

May 5, 2021 5:23 PM in response to RedFox99

MPT is the worst tool possible for this expansion.


May 5, 2021 10:35 AM in response to Loner T

As indicated in the problem statement, attempting to run these commands in Terminal in a regular session produces errors:

gpt show: unable to open device '/dev/disk0': Operation not permitted

fdisk: /dev/disk0: Operation not permitted


I have to go to Recovery Mode to run them. However, here is diskutil from a regular session:


XXXXXX$ diskutil list

/dev/disk0 (internal, physical):

  #:            TYPE NAME          SIZE    IDENTIFIER

  0:   GUID_partition_scheme            *250.1 GB  disk0

  1:            EFI EFI           209.7 MB  disk0s1

  2:         Apple_HFS Macintosh HD      209.2 GB  disk0s2

  3:         Apple_Boot Recovery HD       650.0 MB  disk0s3

  4:    Microsoft Basic Data BOOTCAMP        40.0 GB  disk0s4


I will post the gpt and fdisk outputs when I get them since I have to reboot into Recovery Mode. I already installed gpt fdisk.

May 5, 2021 11:05 AM in response to RedFox99

RedFox99 wrote:

As indicated in the problem statement, attempting to run these commands in Terminal in a regular session produces errors:
gpt show: unable to open device '/dev/disk0': Operation not permitted
fdisk: /dev/disk0: Operation not permitted

This is because SIP is enabled. You can temporarily disable SIP using csrutil in Local Recovery.

May 5, 2021 11:32 AM in response to Loner T

Loner T, Thanks for that important tip. I disabled SIP and am now able to work in standard session Terminal.


I just got off of an Apple Expert Support line callback. They helped me resolve problem #1 (standard boot not working). This was resolved, in Recovery Mode (cmd+R), by changing the default boot disk by using Restart in the Apple menu (followed by changing default boot disk selection from the Bootcamp Windows disk to the MacOS Disk).


They were not able to help with problem #2 (Bootcamp Partition bootability problem) via any investigation or fixes of the MBR. They were not authorized to use Terminal commands to do this and were only able to offer complete Bootcamp reconstruction as support. I don't want to do this as I want to preserve the Partition, if possible.


So... I am hopeful I can find some answers here. Thanks for offering to help Loner T.


Here is the gpt output:


gpt show: /dev/disk0: mediasize=250059350016; sectorsize=512; blocks=488397168

gpt show: /dev/disk0: PMBR at sector 0

gpt show: /dev/disk0: Pri GPT at sector 1

gpt show: /dev/disk0: Sec GPT at sector 488397167

   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 408594616   2 GPT part - 48465300-0000-11AA-AA11-00306543ECAC

 409004256  1269536   3 GPT part - 426F6F74-0000-11AA-AA11-00306543ECAC

 410273792  78123008   4 GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7

 488396800    335     

 488397135     32     Sec GPT table

 488397167     1     Sec GPT header


Here is fdisk output:


Disk: /dev/disk0 geometry: 30401/255/63 [488397168 sectors]

Signature: 0xAA55

     Starting    Ending

 #: id cyl hd sec - cyl hd sec [   start -    size]

------------------------------------------------------------------------

 1: EE 1023 254 63 - 1023 254 63 [     1 - 488397167] <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    



May 5, 2021 2:03 PM in response to Loner T

Yes I can see the Bootcamp partition content in finder and navigate to folders in that partition.


Here is output of "sudo dd if=/dev/rdisk0s4 count=1 2>/dev/null | hexdump -C"


00000000 eb 52 90 4e 54 46 53 20 20 20 20 00 02 08 00 00 |.R.NTFS  .....|

00000010 00 00 00 00 00 f8 00 00 3f 00 ff 00 00 48 74 18 |........?....Ht.|

00000020 00 00 00 00 80 00 80 00 ff 0f a8 04 00 00 00 00 |................|

00000030 00 00 0c 00 00 00 00 00 02 00 00 00 00 00 00 00 |................|

00000040 f6 00 00 00 01 00 00 00 f6 8d 7a b4 be 7a b4 68 |..........z..z.h|

00000050 00 00 00 00 fa 33 c0 8e d0 bc 00 7c fb 68 c0 07 |.....3.....|.h..|

00000060 1f 1e 68 66 00 cb 88 16 0e 00 66 81 3e 03 00 4e |..hf......f.>..N|

00000070 54 46 53 75 15 b4 41 bb aa 55 cd 13 72 0c 81 fb |TFSu..A..U..r...|

00000080 55 aa 75 06 f7 c1 01 00 75 03 e9 dd 00 1e 83 ec |U.u.....u.......|

00000090 18 68 1a 00 b4 48 8a 16 0e 00 8b f4 16 1f cd 13 |.h...H..........|

000000a0 9f 83 c4 18 9e 58 1f 72 e1 3b 06 0b 00 75 db a3 |.....X.r.;...u..|

000000b0 0f 00 c1 2e 0f 00 04 1e 5a 33 db b9 00 20 2b c8 |........Z3... +.|

000000c0 66 ff 06 11 00 03 16 0f 00 8e c2 ff 06 16 00 e8 |f...............|

000000d0 4b 00 2b c8 77 ef b8 00 bb cd 1a 66 23 c0 75 2d |K.+.w......f#.u-|

000000e0 66 81 fb 54 43 50 41 75 24 81 f9 02 01 72 1e 16 |f..TCPAu$....r..|

000000f0 68 07 bb 16 68 70 0e 16 68 09 00 66 53 66 53 66 |h...hp..h..fSfSf|

00000100 55 16 16 16 68 b8 01 66 61 0e 07 cd 1a 33 c0 bf |U...h..fa....3..|

00000110 28 10 b9 d8 0f fc f3 aa e9 5f 01 90 90 66 60 1e |(........_...f`.|

00000120 06 66 a1 11 00 66 03 06 1c 00 1e 66 68 00 00 00 |.f...f.....fh...|

00000130 00 66 50 06 53 68 01 00 68 10 00 b4 42 8a 16 0e |.fP.Sh..h...B...|

00000140 00 16 1f 8b f4 cd 13 66 59 5b 5a 66 59 66 59 1f |.......fY[ZfYfY.|

00000150 0f 82 16 00 66 ff 06 11 00 03 16 0f 00 8e c2 ff |....f...........|

00000160 0e 16 00 75 bc 07 1f 66 61 c3 a0 f8 01 e8 09 00 |...u...fa.......|

00000170 a0 fb 01 e8 03 00 f4 eb fd b4 01 8b f0 ac 3c 00 |..............<.|

00000180 74 09 b4 0e bb 07 00 cd 10 eb f2 c3 0d 0a 41 20 |t.............A |

00000190 64 69 73 6b 20 72 65 61 64 20 65 72 72 6f 72 20 |disk read error |

000001a0 6f 63 63 75 72 72 65 64 00 0d 0a 42 4f 4f 54 4d |occurred...BOOTM|

000001b0 47 52 20 69 73 20 6d 69 73 73 69 6e 67 00 0d 0a |GR is missing...|

000001c0 42 4f 4f 54 4d 47 52 20 69 73 20 63 6f 6d 70 72 |BOOTMGR is compr|

000001d0 65 73 73 65 64 00 0d 0a 50 72 65 73 73 20 43 74 |essed...Press Ct|

000001e0 72 6c 2b 41 6c 74 2b 44 65 6c 20 74 6f 20 72 65 |rl+Alt+Del to re|

000001f0 73 74 61 72 74 0d 0a 00 8c a9 be d6 00 00 55 aa |start.........U.|

00000200

May 5, 2021 5:01 PM in response to Loner T

That seemed to do it. Windows volume was selectable as boot volume and I tested booting and rebooting into Windows. Thanks very much for the help!


This leaves just one issue (problem #3, that started the whole chain of events) that I forgot to include in the original problem statement:


3) How to best expand the Bootcamp windows partition size?


My current approach would be to use Disk Utility to reduce the Mac HD partition by XX GB and then increase the Bootcamp partition by XX GB using a partition resize tool (e.g. MiniTool) in Windows. Is this an okay approach or is there a better one?


May 6, 2021 11:38 PM in response to Loner T

I am in the middle of the Bootcamp partition expansion and recovery and have run into a problem. Here is where I am. Any suggestions?:


1) Created 15GB Resize partition using Disk Utility (at the expense of the MacHD partition).

2) Used GParted to remove the Resize partition and then move and expand the Bootcamp partition to take up the 15GB deallocated from the Resize partition. The operation finished with no errors.

3) Attempted to reboot and got a black screen and a "No operating system error". Very different than the "Windows Failed to Start" Message described in the procedure you mentioned.

4) Attempted to reboot using the install W7 install disc. The repair option attempted to repair the disc and gave up with a "Corrupted System Disk" message at the end of the details.

5) System image backup was the only option left here, but needed drivers to install external disk with the backup image created by 3rd party backup (Aomei Backupper), not Windows. Decided to wait.

6) Considered trying to go back into MacOS and reset the MBR/GPT table to make the Bootcamp disk bootable (as done before), but decided to wait since there is likely more to the problem than just that.


The Bootcamp partition is still visible and navigable in Finder after the move and expansion. Shows the new larger size, but is flagged as nonbootable.


This appears to have left the script. Any suggestions on how to proceed without having to give up and restore the W7 partition from a system image?

May 7, 2021 2:45 AM in response to RedFox99

I finally resolved the "Corrupted System Disk" problem referred to previously by revisiting and proceeding as hinted in step 6 above. I hope I remembered all of this correctly:


6a) Reviewed the partition table using gpt and determined that there was no entry for the Bootcamp disk. Only for the MacHD (partition 2) and Mac Recovery disk (partition 3). Confirmed Bootcamp as partition 5 using "diskutil list".

6b) Regenerated the Hybrid MBR using gdisk as discussed previously. This time the partition entries to change/create were for partitions 2, 3 and 5 due to the creation and subsequent deletion of the Resize partition (#4).

7) Rebooted into Windows. This time the expected "Windows failed to start" error was encountered.

8) Rebooted to Windows install disk (holding down "C" to force boot to optical drive) and selected "Repair computer".

9) Repair completed and rebooted into Windows normally (not with DVD).

10) Rebooted into MAC and set Startup disk to Bootcamp Windows (my preference for now).

11) Both Mac and Windows now booting successfully. Bootcamp enabled :-) !!


This looks like the successful resolution of all 3 problems:


1) MacOS not booting normally: Fix by resetting the startup disk default to MacHD, using Recovery Mode, and not to the problematic Bootcamp partition.

2) Bootcamp partition not bootable: Fix by regenerating a hybrid MBR using gdisk in Terminal, supported by gpt and diskutil.

3) Resize (increase) the Bootcamp partition: Carve out the extra space from MacHD using Disk Utility, reallocate it to Bootcamp using GParted, regenerate the MBR to make Bootcamp bootable and then repairing the W7 partition using the W7 install disk.


What an odyssey. Thanks very much Loner T. I could not have done it without your help!!


One mystery remains in that Disk Utility shows the Bootcamp disk as not bootable even though it clearly is bootable and is the default startup disk.


Conclusion: I could have saved 4 days of headache by just sizing the Bootcamp disk to 50-60GB to start with instead of just 40 GB. The initial Windows install of about 27GB, ended up at 39GB after the 170+ updates, and left me with insufficient work space. I could have avoided the messy resizing process, but then wouldn't have learned all this interesting stuff. Lessons learned. I hope this documentation helps someone else out.

May 7, 2021 5:16 AM in response to RedFox99

RedFox99 wrote:

One mystery remains in that Disk Utility shows the Bootcamp disk as not bootable even though it clearly is bootable and is the default startup disk.

Glad to see your odyssey is successful. Bootability of Windows is decided by the MBR via BIOS, not by the Disk Utility via EFI that is used make macOS bootable.

Bootcamp partition not Bootable and Master Boot Record Problem

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.