Univention Bugzilla – Bug 33531
Compatibility issues with pxelinux.0 in UCS 3.1
Last modified: 2014-08-07 17:46:53 CEST
Erratum for UCS 3.2
+++ This bug was initially created as a clone of Bug #33063 +++
A customer reported boot loops of clients receiving a "local boot" order via PXE after upgrading to UCS 3.1 (syslinux-common 4.02).
A downgrade of the pxelinux.0 file to the version shipped with UCS 2.4 solved the problems.
Upgrading to pxelinux.0 from syslinux-common 4.05 works only for some of the "problem devices".
As LOCALBOOT depends on the BIOS, this method has many known problems: <http://www.syslinux.org/wiki/index.php/Hardware_Compatibility#LOCALBOOT>
At least one work-around for AMI-BIOS was added: syslinux-3.85-pre9-5-ga68e106
The changelog states:
+ * PXELINUX: disable a hack that would make localboot work on
+ some machines, but break just about as many. Some machines
+ which worked with "localboot 0" in previous versions may
+ need "localboot -1" in this one. If you have a machine
+ which requires "localboot -1", a copy of the dmidecode
+ or sysdump output would be appreciated.
That "LOCALBOOT -1" was added in syslinux-4.00-pre30-2-ge19346b and forces the use of "INT 18h" for local boot.
LOCALBOOT supports other optional parameter: <http://www.syslinux.org/wiki/index.php/SYSLINUX#LOCALBOOT_type_.5BISOLINUX.2C_PXELINUX.5D>
In newer versions of syslinux the LOCALBOOT functionality was re-factured into its own module: syslinux-3.80-pre4
There are too may "Fujitsu-Notebooks" and "Dell-Notebooks", so we probably should make it configurable. Best through an UMC-policy, as different BIOSes might require different work-arounds, like the "chain.c32 hd0" trick mentioned above.
LOCALBOOT works again with 6.02, but since 5.10 TFTP is abyssal slow:
3MB Kernel 72MB InitRD
4.0x, 5.01: 1s 30s
5.10..6.02: 43s 16m
More details in <http://bladis/zaQ9bFxSMN>
Syslinux-3.72 has been re-imported as the "syslinux3" source package in errata3.2-2, as any newer version either has problems with LOCALBOOT or TFTP with the Dell E6510.
The source package builds the two binary packages "syslinux3" and "syslinux3-common", which conflict with the packages "syslinx" and "syslinux-common" included in UCS-3 by default: Only one set may be installed in parallel so that /var/lib/univention-client-boot/pxelinux.0 always points to the correct /usr/lib/syslinux/pxelinux.0 file.
The following FTBFS bug <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=505136> had to be fixed, as the compiler in UCS-3 is more picky about the old syslinux version.
NO_WERROR=1 had to be added for building gpxe.
Installation of syslinux3 replaces syslinux.
Advisory: OK (Typo fixed)
The packages syslinux3 and syslinx3-common were added to the 3.2-3 trigger list.