From 44c358a89b9102a930b6229a07a567ca870dccdd Mon Sep 17 00:00:00 2001 From: josh Date: Thu, 14 May 2026 11:03:03 -0400 Subject: [PATCH] Fix initrd loading with explicit iPXE name binding iPXE needs --name on the initrd command and initrd= on the kernel line to properly pass the initrd to the kernel. Without this, the kernel never receives the initrd, causing VFS mount failure. Co-Authored-By: Claude Opus 4.6 --- internal/pxe/ipxe.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/internal/pxe/ipxe.go b/internal/pxe/ipxe.go index 37e09ff..4c981a1 100644 --- a/internal/pxe/ipxe.go +++ b/internal/pxe/ipxe.go @@ -12,8 +12,11 @@ func BuildIPXEScript(publicURL string, img *model.Image, mac string) string { return fmt.Sprintf(`#!ipxe echo Provisioning: booting %s on ${mac} -kernel %s ramdisk_size=16777216 vga=791 video=vesafb:lfb:on rw quiet splash=verbose -initrd %s +echo Loading kernel... +kernel %s ramdisk_size=16777216 vga=791 video=vesafb:lfb:on rw quiet splash=verbose initrd=initrd +echo Loading initrd... +initrd --name initrd %s +echo Booting... boot `, img.Name, kernelURL, initrdURL) }