Control: tags -1 + patch Hi,
I've investigated this bug a bit because of a posting to debian-user@; the original fix that went into Jessie fixes the netboot.tar.gz images. The problem is that the installer data in the mirror doesn't contain ldlinux.c32. (For a more detailed analysis of the problem that I posted to debian-user, see [1].) Additionally, the default pxelinux.0 image from jessie onwards doesn't support HTTP via gPXE/iPXE anymore, it only supports TFTP. So directly using a HTTP mirror for PXE booting with gPXE/iPXE is possible up to Wheezy, but not possible starting with Jessie anymore. I've reported this against pxelinux as: <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=814459> But there is an alternative image, lpxelinux.0, which implements HTTP directly (and doesn't call out to gPXE/iPXE) that may be used instead of pxelinux.0; it's already included in the pxelinux package from Jessie onwards. I've attached a patch against d-i git master that adds the ldlinux.c32 and lpxelinux.0 files to the mirror itself (and not just to the netboot.tar.gz as before). I verified that a Jessie installer created in a clean pbuilder environment with that patch applied works as expected and has ldlinux.c32 as well as lpxelinux.0 in both netboot.tar.gz files as well as the mirror file system proper. It would be great if this patch could be applied not only to Stretch but also be part of the next point release in Jessie, so that booting the Jessie installer directly from HTTP works again. Thanks! Regards, Christian [1] https://lists.debian.org/debian-user/2016/02/msg00295.html
From dd2670702f183b77037060f32255b7449a5d2ed6 Mon Sep 17 00:00:00 2001 From: Christian Seiler <christ...@iwakd.de> Date: Thu, 11 Feb 2016 20:31:46 +0100 Subject: [PATCH] Add ldlinux.c32 and lpxelinux.0 to netboot files on mirrors Closes: #750586 --- build/config/amd64/netboot-gtk.cfg | 2 +- build/config/amd64/netboot.cfg | 2 +- build/config/i386/netboot-gtk.cfg | 2 +- build/config/i386/netboot.cfg | 2 +- build/config/x86.cfg | 2 ++ 5 files changed, 6 insertions(+), 4 deletions(-) diff --git a/build/config/amd64/netboot-gtk.cfg b/build/config/amd64/netboot-gtk.cfg index 4a88b6a..900c158 100644 --- a/build/config/amd64/netboot-gtk.cfg +++ b/build/config/amd64/netboot-gtk.cfg @@ -1,7 +1,7 @@ MEDIA_TYPE = netboot image NETBOOT_DIR_TARGETS = $(TEMP_INITRD) $(TEMP_KERNEL) -NETBOOT_DIR_LINKS = pxelinux.0 pxelinux.cfg +NETBOOT_DIR_LINKS = pxelinux.0 lpxelinux.0 ldlinux.c32 pxelinux.cfg TYPE = netboot/gtk diff --git a/build/config/amd64/netboot.cfg b/build/config/amd64/netboot.cfg index 706b7bb..c83225f 100644 --- a/build/config/amd64/netboot.cfg +++ b/build/config/amd64/netboot.cfg @@ -1,7 +1,7 @@ MEDIA_TYPE = netboot image NETBOOT_DIR_TARGETS = $(TEMP_INITRD) $(TEMP_KERNEL) -NETBOOT_DIR_LINKS = pxelinux.0 pxelinux.cfg +NETBOOT_DIR_LINKS = pxelinux.0 lpxelinux.0 ldlinux.c32 pxelinux.cfg TARGET = $(NETBOOT_DIR) $(NETBOOT_TAR) $(MINIISO) EXTRANAME = $(MEDIUM)/ diff --git a/build/config/i386/netboot-gtk.cfg b/build/config/i386/netboot-gtk.cfg index 144f2fe..570a871 100644 --- a/build/config/i386/netboot-gtk.cfg +++ b/build/config/i386/netboot-gtk.cfg @@ -1,7 +1,7 @@ MEDIA_TYPE = netboot image NETBOOT_DIR_TARGETS = $(TEMP_INITRD) $(TEMP_KERNEL) -NETBOOT_DIR_LINKS = pxelinux.0 pxelinux.cfg +NETBOOT_DIR_LINKS = pxelinux.0 lpxelinux.0 ldlinux.c32 pxelinux.cfg TYPE = netboot/gtk diff --git a/build/config/i386/netboot.cfg b/build/config/i386/netboot.cfg index 706b7bb..c83225f 100644 --- a/build/config/i386/netboot.cfg +++ b/build/config/i386/netboot.cfg @@ -1,7 +1,7 @@ MEDIA_TYPE = netboot image NETBOOT_DIR_TARGETS = $(TEMP_INITRD) $(TEMP_KERNEL) -NETBOOT_DIR_LINKS = pxelinux.0 pxelinux.cfg +NETBOOT_DIR_LINKS = pxelinux.0 lpxelinux.0 ldlinux.c32 pxelinux.cfg TARGET = $(NETBOOT_DIR) $(NETBOOT_TAR) $(MINIISO) EXTRANAME = $(MEDIUM)/ diff --git a/build/config/x86.cfg b/build/config/x86.cfg index 998aed3..28ee614 100644 --- a/build/config/x86.cfg +++ b/build/config/x86.cfg @@ -354,6 +354,7 @@ arch_netboot_dir: x86_syslinux x86_grub_efi cp $(TEMP_INITRD) $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH) cp $(TEMP_KERNEL) $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH)/linux cp /usr/lib/PXELINUX/pxelinux.0 $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH) + cp /usr/lib/PXELINUX/lpxelinux.0 $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH) mkdir -p $(TEMP_NETBOOT_DIR)/$(NETBOOT_PATH)/pxelinux.cfg mkdir -p $(TEMP_NETBOOT_DIR)/$(BOOT_SCREEN_DIR) cp /usr/lib/syslinux/modules/bios/vesamenu.c32 $(TEMP_NETBOOT_DIR)/$(BOOT_SCREEN_DIR) @@ -395,6 +396,7 @@ arch_netboot_dir: x86_syslinux x86_grub_efi # dhcp server setups to work without modification. rm -f $(TEMP_NETBOOT_DIR)/pxelinux.0 ln -sf $(NETBOOT_PATH)/pxelinux.0 $(TEMP_NETBOOT_DIR)/pxelinux.0 + ln -sf $(NETBOOT_PATH)/lpxelinux.0 $(TEMP_NETBOOT_DIR)/lpxelinux.0 # This link is required because pxelinux only looks in the tftp root # for this library (it does a PATH search for any others). ln -sf $(BOOT_SCREEN_DIR)ldlinux.c32 $(TEMP_NETBOOT_DIR)/ldlinux.c32 -- 2.1.4
signature.asc
Description: OpenPGP digital signature