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

Bug#826844: netcfg ignoring BOOTF= in kernel cmdline



Package: netcfg
Version: 1.131+deb8u1
Severity: important


I am trying to initiate a full hands off installation of Jessie on a remote server.
We use iPXE to pass boot information, and I use:
BOOTIF=${netX/mac}

to have iPXE pass the MAC of the boot interface to Jessie d-i. However netcfg refuses to parse the MAC from /proc/cmdline even though I can see it there.

Here is the output from /var/log/syslog (DEBCONF_DEBUG=5 is set) (paraphrased because I'm typing this out by hand):
~ # grep BOOTIF /var/log/syslog
kernel: [0.00000] Command line: auto=true priority=critical url="" href="http://thebooting.dev2.internal/preseed">http://thebooting.dev2.internal/preseed interface=auto DEBCONF_DEBUG=5 BOOTIF=0c:c4:7a:8e:ad:4a
kernel: [0.00000] Kernel command line: auto=true priority=critical url="" href="http://thebooting.dev2.internal/preseed">http://thebooting.dev2.internal/preseed interface=auto DEBCONF_DEBUG=5 BOOTIF=0c:c4:7a:8e:ad:4a
netcfg[780]: INFO: Could not find valid BOOTIF= entry in /proc/cmdline

This is me checking /proc/cmdline:
~ # cat /proc/cmdline
auto=true priority=critical url="" href="http://thebooting.dev2.internal/preseed">http://thebooting.dev2.internal/preseed interface=auto DEBCONF_DEBUG=5 BOOTIF=0c:c4:7a:8e:ad:4a

I've tried to look at the source (master branch from git://anonscm.debian.org/d-i/netcfg.git) to try and figure out what's wrong, but I am not a C developer.
Line 644 seems to be confusing because it's comparing 'bootif_len' to 20 [(6 * 3 - 1) + 3]
But MAC addresses are 15 characters long (including the colons).

I am going to code my way around this using the preseed/early_command for setting the interface. But it would be nice if this issue was resolved. Let me know if you need more information.

The installer information is:
Debian GNU/Linux installer
8 (jessie) - installer build 20150422+deb8u3

Thanks.

Reply to: