From a88f3477777994c0c6d00e9030fbc132b4715475 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torbj=C3=B8rn=20Lindahl?= Date: Mon, 2 Feb 2026 00:02:46 +0100 Subject: [PATCH] Fix iPXE boot: load initrd before kernel, add imgfree - Load initrd FIRST to address UEFI memory mapping requirements - Add imgfree to clear previous images before loading - Put kernel args directly on kernel line instead of using imgargs - Add break=mountroot for debugging initramfs execution --- http/boot.ipxe | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/http/boot.ipxe b/http/boot.ipxe index b55d2f4..4972d3f 100644 --- a/http/boot.ipxe +++ b/http/boot.ipxe @@ -1,10 +1,16 @@ #!ipxe echo Booting Ubuntu Noble K3s Node via iPXE -echo Loading kernel... -kernel http://192.168.100.1:8800/vmlinuz + +# Clear any previous images +imgfree + +# Load initrd FIRST (UEFI memory mapping requirement) echo Loading initramfs... initrd http://192.168.100.1:8800/initrd-netboot.img -echo Setting kernel arguments for HTTP root mounting -imgargs vmlinuz initrd=initrd-netboot.img rdinit=/init boot=netboot root=http://192.168.100.1:8800/filesystem.squashfs rootfstype=squashfs overlayroot=tmpfs ip=dhcp console=tty0 console=ttyS0,115200 loglevel=7 panic=-1 + +# Then load kernel +echo Loading kernel... +kernel http://192.168.100.1:8800/vmlinuz initrd=initrd-netboot.img rdinit=/init boot=netboot root=http://192.168.100.1:8800/filesystem.squashfs rootfstype=squashfs overlayroot=tmpfs ip=dhcp console=tty0 console=ttyS0,115200 loglevel=7 panic=-1 break=mountroot + echo Booting system... boot