Ryan Steele wrote:
Ralf Utermann wrote:
Ryan Steele wrote:
[...]
Just out of curiosity, what does your udev rule hack look like? I wrote mine in Perl, which isn't available in the initramfs. I'd be interested
to see your implementation if you care to share it.
it's just a hook sh script that does a copy of a fixed rules file prepared
for this class of machines, nothing generated dynamically. It contains:

copy_exec /usr/local/fai/alcc-ost/70-persistent-net.rules /etc/udev/rules.d/

and that's all.

Bye, Ralf

I think this is the bug I was hitting: https://bugs.launchpad.net/ubuntu/+source/initramfs-tools/+bug/182940


It may or may not be present in Debian as well. I'm going to grab that newer version of initramfs tools and stick on my Hardy boxes and see if a stock initrd works...


Respectfully,
Ryan

Well, the latest initramfs-tools package from intrepid didn't quite do the trick, but led me to a solution. I ended up making the following changes to /scripts/live:



638: # make /scripts/live use configure_networking just like /scripts/nfs does
639:    #ipconfig ${DEVICE} | tee /netboot.config
640:    configure_networking



And this change to /scripts/functions, at the bottom of the configure_networking function:



356: # If we don't know the device ahead of time, we need to check net-*.conf
357:     # source ipconfig output
358:     #if [ -n "${DEVICE}" ]; then
359:     #       # source specific bootdevice
360:     #       . /tmp/net-${DEVICE}.conf
361:     #else
362:        # source any interface as not exactly specified
363:        . /tmp/net-*.conf
364:     #fi



Basically, when we PXE boot with the pxelinux.cfg file set up by fai-chboot using ip=dhcp, we end up using the /scripts/live shell script, which uses the 'ipconfig' binary. But, we need to tell ipconfig to time out for an interface for which it can't find a DHCP server, which is what configure_networking does using 'ipconfig -t'. I'm not sure why /scripts/live doesn't use the configure_networking script by default, or if this is even the right thing to do, but it works for me, no matter which interface I have cables in or which interfaces can contact a DHCP server via ipconfig. If anybody has any comments, please feel free to voice them.


HTH,
Ryan

Antwort per Email an