[SOLVED. Bug?] How to specify EFI System Partition's mount point in ubu installer?

PGNet Dev pgnet.dev at gmail.com
Mon Jun 27 03:21:19 UTC 2016


On 06/26/2016 01:58 PM, Daniel Llewellyn wrote:
> By putting it inside an LV you hid it from the UEFI and
> thus could not boot from it.

The LV is a Dom0/Host entity.  The Xen Guest's BIOS/OS does not see an 
LV; it only sees an attached drive partitions,

  blkid -s TYPE
   /dev/xvda1: TYPE="vfat"
   /dev/xvde1: TYPE="ext4"
   /dev/xvdf1: TYPE="swap"
   /dev/xvdg1: TYPE="ext4"


> The startup.nsh file mentioned in the UEFI command-line mode is unrelated.

On an Opensuse EFI Xen Guest, the NvVars file is correctly written to 
load the opensuse secure shim

	efibootmgr
>>>		BootCurrent: 0009
		Timeout: 0 seconds
		BootOrder: 0009,0000,0001,0002,0003,0004,0005,0006,0007,0008
		Boot0000* UiApp
		Boot0001* UEFI Floppy
		Boot0002* UEFI Floppy 2
		Boot0003* UEFI QEMU HARDDISK QM00001
		Boot0004* UEFI Misc Device
		Boot0005* UEFI Misc Device 2
		Boot0006* UEFI Misc Device 3
		Boot0007* UEFI Misc Device 4
		Boot0008* EFI Internal Shell
>>>		Boot0009* opensuse-secureboot

On the Ubuntu EFI Xen Guest, the post-install NvVars points to the EFI 
Internal Shell as the boot item

	efibootmgr
>>>		BootCurrent: 000A
		Timeout: 0 seconds
		BootOrder: 0000,0002,0003,0004,0005,0006,0007,0008,000A
		Boot0000* UiApp
		Boot0002* UEFI Floppy
		Boot0003* UEFI Floppy 2
		Boot0004* UEFI QEMU HARDDISK QM00001
		Boot0005* UEFI Misc Device
		Boot0006* UEFI Misc Device 2
		Boot0007* UEFI Misc Device 3
		Boot0008* UEFI Misc Device 4
>>>		Boot000A* EFI Internal Shell

With that default, adding/populating the 'startup.nsh' ensures it's 
executed, and it's spec'd .efi is loaded, rather than simply dropping to 
the shell itself.

> The proper fix in your case is to ensure
> that the EFI partition is an actual partition and not an LV, and then to
> perform the install. When this is done the installer will add an entry
> into the UEFI variables table which indicates which file to use for the
> boot loader (i.e. grubx64.efi or shimx64.efi depending on whether the
> UEFI implementation is requiring secure-boot signed files).


Again, the guest has no knowledge of the LV.

It's of note that this scenario fails uniquely on Ubuntu's install, but 
works without fail on other OS, e.g. Opensuse, above.

On 06/26/2016 03:58 PM, Tom H wrote:> On Sun, Jun 26, 2016 at 11:23 AM, 
PGNet Dev <pgnet.dev at gmail.com> wrote:
> An EFI xen guest?! Is this even possible?

Certainly.

> With qemu, you need an ovmf binary.

Xen's built with either bundled, or system, ovmf.  And in the Xen guest 
cfg, bios='ovmf' is specified.

Works just fine.  Once properly booted, that is.




More information about the ubuntu-server mailing list