tg3 network cards [SOLVED]

Ryan Steele ryans at aweber.com
Mon Dec 8 15:24:35 CET 2008


Ryan Steele wrote:
> 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:
>

This because I don't think ${DEVICE} is *ever* the empty string.  Even 
if it's not specified in /proc/cmdline, it gets set to 'eth0' when you 
source the initramfs.conf.

>
>
> 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
>


-- 
Ryan Steele                                    ryans at aweber.com
Systems Administrator                          +1 215-825-2196 x758
AWeber Communications                          http://www.aweber.com



More information about the linux-fai mailing list