1

I've installed Ubuntu (~EFI mode) in a ASUS Zenbook UX32VD, which has Windows 8 pre-installed. It had Security Boot disabled. I installed grub in the same partition I put the root directory (sda7 in my case).

After installation Ubuntu loaded and worked, great.

But there were 2 other partitions in grub that didn't run:

Windows Recovery Enviroment (loaer) (on /dev/sda2)
Windows 8 (loader) (on /dev/sda4)

Whenever I try to load any of the above i got:

error: can't find command <<drivemap>>.
error: invalid EFI file path.

I found in Internet multiple people having similar issues: https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1024383

I tried using Boot-repair (recommended repair) utility from Ubuntu, and I've got 2 new entries in grub called:

Windows UEFI bootmgfw.efi
Windows Boot UEFI Loader

They load Windows 8, but the recovery partition is missing. I've tried using Boot-repair more times with different parameters which could make the bootmgfw.efi fail but none added a recovery partition entry:

http://paste.ubuntu.com/1690668/ (this is the last one Boot repair I did. EDIT: This Boot-Repair was using Recommended Repair)

I'd like to know how can I add an entry to grub that loads the recovery one. Any help to make my recovery partition to load would be greatly appreciated.

2

3 Answers 3

0

The Windows RE cannot be loaded directly from GRUB, as it requires bootmgfw.efi to call it. The only way to get to it is through Windows 8 because it relies on the underlying framework of Windows to be loaded. As long as you did not move the original partitions (Windows RE and Windows 8) around, you should be able to get into through Windows. Otherwise, you will need to rebuild the BCD, which is outside the scope of this question.

1
  • It's been a while since last time i used the recovery, but basically what i remembered is that, booting Windows 8 and then messing with the booting options, pushing F8, or something like that will pop up a menu that allows recovery, MS boot repair, etc... I know this is not a solution, but: making windows repair the boot sector with his own will make all W8 partitions work again, just like Chris R. pointed out. May 10, 2014 at 7:27
0

Late post I know but I found a solution.

I booted off Ubuntu 16.04 UEFI USB with Secure Boot: off. I had a Dell I was working off for a client who had upgraded to Windows 10 and wanted to run the factory reset which they couldn't access.

  1. Booted off USB and selected "Try Ubuntu...".

  2. Open hub and open Disks.

  3. Looked for the partition on the main hard drive about 5xxmb in size and noted the partition number. In my case I noticed I had 2. The first one was /dev/sda1 so I mounted it and had a look at the contents. I noticed a /EFI/Dell/Boot/bootmgfw.efi

  4. Restarted the computer and at the grub menu pressed 'e' to edit an entry.

  5. Cleared the text and added the following:

    insmod part_gpt
    insmod chain
    set root='(hd1,gpt1)'
    chainloader /EFI/Dell/Boot/bootmgfw.efi

and then I hit F10 and it booted to Windows menu, selected troubleshooting and then Dell Backup and Recovery.

You may have to play around with the set root line by changing the hd1 to hd0 or hd2 or whatever depending on how many drives you have. The gpt1 is the partition number so if yours was /dev/sda4 you would need to use gpt4 here. The reason I went with the first partition was because it: 1) had a EFI folder in the root of the partition, 2) there was a manufacturer folder in that EFI (Dell), and 3) it contained a Boot/bootmgfw.efi which I understand is a windows boot manager binary.

-1

I had almost the same problem (see here) (same machine!), adding/changing the normal start entry (Windows 8 (loader) (on /dev/sda4)) to

setparams 'Win8'
set root='(hd0,gpt1)'
chainloader /EFI/microsoft/BOOT/bootmgfw.efi

fixed that one. Still, I could not get the recovery-one to work. I really do need that one. Did anyone find any solution to that yet?


EDIT:

Here is one attempt which seemes to have worked for fixing the recovery mode:

setparams 'Win Recover - Recovered'
set root='(hd0,gpt2)'
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi

It boots, then I get a bluescreen. I don't know if this is because this entry is wrong or my win8 is broken... If someone could verify that it is working - that would be great!

1
  • I would really like to know why this answer was voted down :S I think this really could help someone... Apr 29, 2014 at 19:36

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .