[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#615600: BOOTIF= kernel commandline option does not work



Howdy,

I just came across this report in Debian's bug tracker.

On Sun, 27 Feb 2011 16:22:28 -0400, Joey Hess wrote:
> BOOTIF is a pxelinux boot parameter. It is supported by the Debian
> initramfs when pxe booting, but it is not supported by the Debian
> installer.
>
> Perhaps it should be. In the meantime, you can use the documented
> preseeding interface of booting with interface=eth1. I don't think
> netcfg allows specifying a interface by MAC though.

Floris Bos mentioned that this is similar to an oldish bug (at least
by Ubuntu standards) in Ubuntu's bug tracker against the netcfg
package:
 provide a method to use a specified MAC-address as the installation device
 * https://bugs.launchpad.net/ubuntu/+source/netcfg/+bug/56679

We have a proposed solution, in the attached script, S31pxedust.

Adding 'ipappend 2' to the host's pxelinux config file makes PXELINUX
append the mac address of that interface to the kernel options.
 * http://syslinux.zytor.com/wiki/index.php/SYSLINUX#IPAPPEND_flag_val_.5BPXELINUX_only.5D

This allows the initrd to access to the mac address of the interface
which PXE booted and is probably the interface we want to use for
DHCP.

Executing from the debian-installer-startup.d directory of the initrd,
this script reads the value of the 'BOOTIF' kernel option and looks to
see if there is an interface name with this mac address.  If so, it
then uses 'db_set' to change the 'netcfg/choose_interface' option to
this interface name.

Would you be willing to consider this approach?  We'd absolutely like
to avoid diverging from Debian in support of a BOOTIF kernel option
for installations, and we have a great need for a supported approach.
I'm willing and able to modify and test the attached boot accordingly.

Please advise.

Thanks,
-- 
:-Dustin

Dustin Kirkland
Ubuntu Core Developer

Attachment: S31pxedust
Description: Binary data


Reply to: