I see a few similar questions but I haven't found one that had a solution yet for me. So, forgive me if this seems redundant.

As the title implies, I want to install an Ubuntu fork (LinuxLite 2.0) on to a USB that will be bootable in my Surface Pro. (Full install - not a LiveCD or Persistent) LinuxLite 2.0 does not come 'out of the box' with UEFI compatibility. However, I have read that it can be made UEFI bootable on HDD/SDD using Ubuntu's UEFI support. I haven't read a specific case for a full USB install.

One of the issues I am facing is that (although the hardware and concept of the Surface Pro is phenomenal), if I may, Windows 8.1 is terrible. I am working between two PCs to accomplish this.

  1. The Surface Pro - limitations: one USB port, USB port that doesnt like to create bootable USBs (I can use the same software in my other PC and create it and use it but the Surface Pro will not make or run a UEFI bootable LiveCD)
  2. Acer Aspire One - Windows 7 : does what the Surface doesn't, makes USBs that boot in Windows 7 - however, painstakingly slow.

Between these two PCs I have only truly created one UEFI capable USB OS - Tails 1.1 (However, it is more of a LiveCD/Persistant and not a true full install. But this proves that there is not faulty hardware when booting from the USB with UEFI.

OSs that I have at my disposal now:

1 16GB SARDU Multi-Boot with: Ubuntu 14.04 x64 Ubuntu 14.04 i386 LinuxLive 2.0 x64 LinuxLive 2.0 i386

*Prefer to go with the x64 version but its incompatible with the Acer. I cant run the Live Media

1 32GB USB (where I want to install my OS) -GPT USB-

sdc1/       150MB   unformatted (for making the BIOS/EFI Boot partitions)
sdc2/       2GB         Swap Space
sdc3/       ~30GB   LinuxLite Goes 

These are the posts I have found most helpful:




I've read these but I am still not getting the install methods for the boot/efi. Nor do I understand the correct sequence. They differ in a universal 'correct' way to make the boot partition. Although, before I even get to that point:

I'm failing to see how to mount /boot/efi (I can find only the flag for boot_grub. When I format the fat32 boot partition it I don't see a mount option nor do I see a mount option after. (In both LiveCD for Ubuntu and LinuxLite)

Is there anyone who can 'break it down' for me? I feel like I am a bit lost with so much failure at UEFI configuration.

Nothing against Ubuntu (in fact 13.04 is installed alongside Windows 7 in the Acer) I am posting this on both forums.

  • Welcome to AskUbuntu! It appears that the superuser post wishes you to create a partition, then while installing Ubuntu change the formatting (in the Ubuntu installation process). Not sure if that helps. – No Time Aug 27 '14 at 2:46

First, UEFI is 64 bit only for most of the usual situations. I don't know why you couldn't create a 64 bit live media with the 64 bit iso on a 32 bit machine -- it's just copying files around. Heck, use dd and files don't even enter the copy if really necessary. Second, UEFI on a gpt disk needs a bootable, FAT32 partition of 300M. NOT the grub-bios flag used for MBR boot from a gpt disk -- you are not going be using a binary blob in the MBR to boot -- you will use the bootloader file in /EFI/Boot/bootx64.efi That's in the EFI partition, so wherever you mount it, just add the /EFI/Boot business. e.g. mount it in /boot/efi, put your boot loader into /boot/efi/EFI/Boot/bootx64.efi. If you mount it in /mnt/sdb1, use /mnt/sdb1/EFI/Boot/bootx64.efi. Now for a secure boot enabled boot, your bootx64.efi will be the signed copy of shim.efi (look in /lib/shim or is it /usr/lib/shim?). Additionally for secure boot, shim needs a copy of grubx64.efi in the SAME directory. copy it from /usr/lib/grub/... the 64 bit directory. Now your install should normally leave in /EFI/ubuntu the bootloaders too (unused on a USB boot, but you might just copy them from there instead of looking for them in the library). Also in /EFI/ubuntu will be a 3 line grub.cfg file which brings in the maintained grub.cfg from /boot/grub.
So, that's it. No special nvram entries to select bootloaders, the USB default of bootx64.efi is hardwired. A regular install, selecting the target's EFI partition probably will NOT leave the bootloaders in /EFI/Boot, so move them in yourself (just have to copy one or two files). The installer just loves to dump all the new bootloaders into the hard disk's EFI, so you might have to set up the target's EFI from scratch -- /EFI with directories ubuntu and Boot. Not difficult.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.