How to UEFI HTTP boot VMs?


If I understand correctly, LXD does support UEFI HTTP chainloading ( but it’s not clear to me how I would pass configuration (for example the URL for a ipxe script) to LXD in order to boot virtual machines based on the given configuration. Is this possible? Or, asked differently, how would I programmatically configure a LXD VM instance to boot via UEFI HTTP or PXE?

I run LXD 4.9 installed through snap.


You may be able to manually trigger it from the firmware menu by hitting ESC early in the boot sequence. If that doesn’t let you do it, then I suspect the answer would be to boot some kind of Linux distro, then use efibootmgr to modify the boot sequence, adding a suitable EFI call for your URL and then reboot onto that.