Unable to Boot Windows 7 after GPT/RAID migration

2

I recently did a migration off of a single hard disk to a RAID array. I backed up my partitions with Clonezilla and everything worked fine. I was able to then restore both my Windows 7 Bootloader and Windows 7 main partitions to my hardware RAID array. I'm currently running it in a dual-boot configuration with an Ubuntu derivative on a GPT partition table.

The Linux distribution restored great and worked right out of the box, but Windows refuses to boot. I have tried the following:

  • Ubuntu Boot-Repair.
  • Updating GRUB manually.
  • Trying a Windows Startup Repair disk (always tells me that my system isn't compatible with the disc type).
  • Re-copying the partition with Clonezilla.

Nothing has seemed to work so far. I was prompted to create a small unformatted partition on my disk by Boot Repair, so I did so and gave it the "bios_grub" flag as prompted. Now, in GRUB, I have two entries:

  1. Windows 7 (/dev/sda2)
  2. Windows 7 (/dev/sda3)

When I boot option number one, I get the following error:

Windows failed to start. A recent hardware or software change might be the cause. To fix the problem:

  1. Insert your Windows installation disc and restart your computer.
  2. Choose your language settings, and then click "Next."
  3. Click "Repair your computer."

If you do not have this disc, contact your system administrator or computer manufacturer for assistance.

File: \Boot\BCD
Status: 0xc000000e
Info: An error occured while attempting to read the boot configuration data.

When I boot option number two, I get a blinking cursor and nothing else.

Any ideas on what to try next?

windows
grub
multi-boot
gpt
asked on Super User Dec 23, 2012 by Naftuli Kay

1 Answer

3

I'm not 100% positive, but it sounds like you converted from an MBR-partitioned disk to one that uses the new GUID Partition Table (GPT) system. The problem is that, although Linux is happy to boot from a GPT disk on a BIOS-based computer, Windows isn't. If my analysis is correct, you have two options to recover from this problem:

  • Convert Windows to boot in EFI mode. This is only practical if you've got firmware that supports both BIOS-mode and EFI-mode booting. Most hardware sold in the last ~1.5 years does, but few earlier systems support EFI. See this page for detailed conversion procedure. It's a bit tedious. In some cases, you can use software called DUET to enable BIOS-based systems to boot in EFI mode, but this isn't 100% reliable.
  • Convert your new disk from GPT to MBR mode. This is possible only if the disk (or RAID array in your case, assuming this is hardware RAID) is smaller than 2TiB (or up to 4TiB if you can play "fast and loose" with some rules); for bigger disks, GPT is a necessity. You can do the conversion without data loss with GPT fdisk, which comes with most Linux distributions in a package called gdisk or gptfdisk. See the GPT fdisk documentation for information on doing such conversions. Once you finish the conversion, you'll need to re-install GRUB. At that point, Windows may start booting (via GRUB), or you may need to do some more Windows-specific repairs to get it to work.

If your array is larger than 2TiB and you don't have EFI-capable firmware, you might consider looking at your RAID hardware's manual to see if you can split the array into two virtual disks -- a small one that you can partition with MBR to keep Windows happy and a bigger one with GPT to use for data and for Linux. This might require backing up and restoring your data, though. DUET is another option, but be aware that it rarely works on AMD-based computers, and it's tedious to get up and running even in a best-case scenario.

answered on Super User Dec 23, 2012 by Rod Smith

User contributions licensed under CC BY-SA 3.0