PXE Boot a VM and use HTTP for kernel/initrd download
-
Hello,
We're unable to PXE boot a VM in UEFI for an unattended install as the tftp download of the kernel and initrd file download is so slow it times out. The kernel loads in a few minutes and initrd fails after 45 minutes or so. This is not a new problem and I've found many posts describing it and none with a real solution. Some posts claim the problem is block size and I've tried every suggestion with no change.
Other posts say to use http instead of tftp but if I specify an http source, grub just reads it as a local source and I get "file not found."
I wasn't initially sure this was even an xcp-ng question. Seems like it might depend on whether the grubx64.efi I'm using supports http as a device. FWIW I'm using the efi file that came with the Ubuntu 22.04 LTS install media. But it looks like this is also determined by whether the VM's "BIOS" supports it. Anybody know?
I'm also finding references to iPXE as an alternative. That can involve flashing the PXE firmware on a physical device but they also have some kind of chainloader alternative.
Has anybody made pxe installing a UEFI VM work?
-
I did just find this: you should realize that GRUB may be relying on the network support of the UEFI firmware at that point. To support boot over HTTP, the firmware needs to support UEFI specification version 2.5 or greater
Finding even more information. uefi.org says v2.6 was released Jan 2016. And VMs use the tianocore UEFI code, don't know what version or how to tell.
Anybody know what UEFI version a VM is running in its "firmware?"
-
Question for @gduperrey or @stormi
- 3 months later
-
This post is deleted!