X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=components%2F9990-networking.sh;h=292710741c2133dbe0f0e3449fe3e232b7af2afe;hb=43b5c8a4df961f5346e2ce176d6efe7495ddff14;hp=dd1d0f0c2007e746d7ed2024e57435055390c24e;hpb=0d766871a04b491ea9ff5e5d3eb0ae16cb288441;p=live-boot-grml.git diff --git a/components/9990-networking.sh b/components/9990-networking.sh index dd1d0f0..2927107 100755 --- a/components/9990-networking.sh +++ b/components/9990-networking.sh @@ -89,20 +89,10 @@ do_netsetup () devlist="$devlist $device" done - # this is tricky (and ugly) because ipconfig sometimes just hangs/runs into - # an endless loop; if execution fails give it two further tries, that's - # why we use '$devlist $devlist $devlist' for the other for loop - for dev in $devlist $devlist $devlist + for dev in $devlist do echo "Executing ipconfig -t $ETHDEV_TIMEOUT $dev" - ipconfig -t "$ETHDEV_TIMEOUT" $dev | tee -a /netboot.config & - jobid=$! - sleep "$ETHDEV_TIMEOUT" ; sleep 1 - if [ -r /proc/"$jobid"/status ] - then - echo "Killing job $jobid for device $dev as ipconfig ran into recursion..." - kill -9 $jobid - fi + ipconfig -t "$ETHDEV_TIMEOUT" $dev | tee -a /netboot.config # if configuration of device worked we should have an assigned # IP address, if so let's use the device as $DEVICE for later usage. @@ -141,6 +131,22 @@ do_netsetup () HWADDR="$(cat /sys/class/net/${interface}/address)" fi + # Only create /etc/hosts if FQDN is known (to let 'hostname -f' query + # this file). Otherwise DNS will be queried to determine the FQDN. + if [ ! -e "/etc/hosts" ] && [ -n "${DNSDOMAIN}" ] + then + echo "Creating /etc/hosts" + cat > /etc/hosts <