Ubuntu – Booting from USB Grub 2 Invalid EFI

grub2

This is my first time on the forums here, but I recently installed ubuntu 14.04 and would like to re-install it via USB. I have been trying for about two days now to use the grub menu and have looked up many answers which have not worked.

One of the answers I found was to update the grub2 menu to include my usb listed in the boot menu. However, upon selecting my usb from the menu, after pressing Enter, it says Invalid EFI file path. I looked on the USB to see what files were present and I found a folder called "EFI". Inside is another folder called "BOOT". Inside of the boot folder, are two EFI files.

I've previously tried using the code mentioned on many of the threads I've read that say:

grub> set root='(hd1,1)'
grub> chainloader +1
grub> boot

I have also used the 'ls' to find which drives are available and have tried each drive. Something I found interesting on another forum was that someone said that the above code shouldn't be used but rather this:

insmod part_gpt
insmod fat
insmod search_fs_uuid
insmod chain
search --fs-uuid --set=root 3AD6-1B19
chainloader /EFI/Microsoft/Boot/bootmgfw.efi

Upon trying this new and "improved" idea, It said that 3AD6-1B19 did not exist (I don't know if that was just an example uuid from the other guy who pasted the code)… but what I understand is that I need set root to my usb drive and not on the hard drive and also specify the EFI file which is in the /EFI/BOOT/ folder.

Any help would be greatly appreciated. And P.S., the reason I want to re-install ubuntu 14.04 is not because it's causing issues, but ONLY because I can't seem to merge the unallocated drive space left over by my previous windows installation (I didn't clear the whole drive..at one point I had windows and Ubuntu dual booting). Now I want to use Window's space since I deleted the partition with Gparted. 🙂 Thank you ALL for the help in advance! I know that many others can benefit from a GOOD advice since I have seen many others who can't boot from a usb from Grub2.

Very Best ~ Nya

Best Answer

The numbers that come after --set=root can be found if you plug in your USB containing the Windows OS, open terminal, and run blkid. You'll then see the name of your USB device, along with its universally unique identifier (UUID).

Next, explore your USB files and find where your EFI image is; it is most likely in the directory in the code that you already posted. Keep note of where it is because you'll need it.

Then, boot into the Grub command and type the following:

insmod part_gpt
insmod fat
insmod search_fs_uuid
insmod chain
search --fs-uuid --set=root (insert your uuid here)
chainloader /your/efi/boot/file
boot

I hope I've helped. This works for me when I need to boot Linux via USB.

Related Question