Thank you for being a valued part of the CNET community. As of December 1, 2020, the forums are in read-only format. In early 2021, CNET Forums will no longer be available. We are grateful for the participation and advice you have provided to one another over the years.

Thanks,

CNET Support

Question

Moved Windows partition to the left, won't boot (EFI)

Feb 10, 2015 12:08AM PST

I'm at my wits' end with this problem. I've searched all over, but can't find a solution. I'm fairly new to Linux, and not an expert with computers generally, but having been messing around A LOT with installing linux distros recently I feel somewhat familiar with BIOS and bootloaders and EFI, which is what makes this so frustrating. In addition, every other problem I've come across with linux I've been able to find a relevant posting on some forum that applied. This is my first posting to the internet re: computer problems and I consider it a humbling sign of defeat.

I'll try to be brief. I have a quadruple boot EFI system: Windows 8.1, Linux Mint (debian), OpenSUSE, and Fedora.
Before the troubles, sdb was like this:
sdb1 : fat32 300MB EFI boot
sdb2 : 900MB recovery
sdb3 : 128MB Microsoft reserved
sdb4 : 187GB Windows 8.1
sdb5 : XXXXX (this was the 20GB recovery partition that I moved to another HD, but it got wiped)
sdb6 : Suse
sdb7 : Mint
sdb8 : Fedora

I was on kind of a high having successfully installed and got on my way to customizing 3 linuxes. I had already deleted that large recovery partition, so while i was in the process of adding space to and moving the linux partitions, I decided to delete the other small microsoft reserved partitions (NOT the EFI partition). I'm almost certain that at this point I successfully booted into all 4 systems to see if anything broke. Then when it seemed like everything was okay, I decided to move the Windows partition to the left, planning to allocate that space somewhere. In Gparted, it warned me that moving a windows partition was a bad idea, but I figured I'd be able to deal with it. It successfully moved the partition but now Windows fails to boot.

The EFI partition is there and I can get into all the linux bootloaders. The Windows partition seems completely intact. After trying to boot into windows it will give an error message when I mount it in linux, but after doing startup repair from a windows USB I can mount it (startup repair fails no matter how many times I try it though).

My understanding of the problem now is that the bootmgr.efi file is pointing to a physical location on the disk to find the system but it's not there. I guess Linux partitions don't mind being moved around but Windows does. Is this the case? If so, how do I fix it?

Additional information, attempted fixes, etc:

1) I've tried booting from every single .efi file on sdb1. In fact, at one point I had 12 boot entries in the BIOS, and I think it fried the BIOS. I couldn't get past POST, freaked out, and needed to physically tear the thing apart, pop out the CMOS battery to reset it, and after that it came back (still with all the boot entries though). Has anyone ever encountered this? It's fine now.

2) I've tried ubuntu's boot-repair, but that seems to just find the windows .efi files so it doesn't help.

3) Windows startup repair doesn't work. I've tried it 4 times in a row several times.

4) Searching for phrases like "moved windows partition, won't boot", or "create new bootmgr.efi" usually result in pages on how to repair or create the BCD file. I've tried several of these solutions with no luck, and I don't think this is the problem anyway. Originally Windows 8 had no boot manager screen. When I was installing the first linux distro I used EasyBCD, which created a Windows boot manager screen, but no linux. Since that Grub would boot to the windows boot manager. After upgrading to Windows 8.1 the windows boot manager screen disappeared, but Grub still worked fine booting into all systems. When attempting the fix at:

http://www.fixedbyvonnie.com/2013/12/how-to-repair-the-efi-bootloader-in-windows-8/
and following up with this page which someone in the comments sugggested:
http://www.techspot.com/guides/630-windows-8-boot-fix/

I found that "bootrec /scanos" yields 0 windows installations.

5) I tried changing the boot flags for sdb4 to all kinds of combinations before running startup repair with no luck.

6) The only other solution I can think of at this point to try is creating two "dummy" partitions to the left of sdb4. I have no record of the exact sizes of the original ones, and I'm reluctant to mess around with moving the windows partition again. Is that a crazy idea?

7) It's probably clear I'd really rather not re-install windows.

If anyone can offer any help I'd really appreciate it. Solutions, other posts that cover the same area, or corrections if there seems to be something that I've misunderstood... ANYTHING, please!

Thanks.

Discussion is locked

- Collapse -
Answer
EFI boot is like a minefield.
Feb 10, 2015 12:25AM PST

Let's hope you backed up an image before you did all this. I see you already tried EasyBCD but next time turn off EFI and go with CSM (varies with machine what they call this), then install your Windows and then Linux.
Bob

PS. I've yet to find support for recovering what you've done. Let's hope someone proves me wrong.

PPS. Worth repeating. Don't operate on working systems. Clone that, operate on the clone.

- Collapse -
Answer
did you run
Feb 10, 2015 4:30AM PST

update-grub on any of the linux versions?

- Collapse -
Answer
windows and linux
Feb 10, 2015 4:57AM PST
"Then when it seemed like everything was okay, I decided to move the Windows partition to the left, planning to allocate that space somewhere. In Gparted, it warned me that moving a windows partition was a bad idea, but I figured I'd be able to deal with it. It successfully moved the partition but now Windows fails to boot....Windows startup repair doesn't work. I've tried it 4 times in a row several times....Windows startup repair doesn't work. I've tried it 4 times in a row several times."

So, the only problem is getting windows booted, the linux all work OK? All Linux versions loaded are EFI capable 64 bit? You can actually get into an opening part of windows? Or is this windows startup repair something else?

What's happened is the start point of the windows volume has moved to another sect or and the boot process is still looking for it at the old sector.

http://superuser.com/questions/815267/can-i-fix-error-0xc0000225-without-reinstalling-windows

"This turned out to be the right problem (and solution), but your tip about setting the partition to active was the real key. I needed to make the partition active so that bootrec would know where to write the rebuilt BCD. Perhaps you could add that to the answer? (I didn't have to use bootsect, as it turned out.) - David Z Oct 2 '14 at 4:27 "

another problem may be the clash between GPT and MBR on a UEFI motherboard with a UEFI windows, especially if you installed an MBR (32 bit) version of Linux on it. Everything done to recover windows 8 should be done in NOT Legacy, not CSM, but in full UEFI mode.