#!/bin/bash . /etc/functions TRACE "Under /bin/network-init-recovery" # bring up the ethernet; maybe should do DHCP? ifconfig lo 127.0.0.1 network_modules="e1000 e1000e igb sfc mdio mlx4_core mlx4_en" for module in `echo $network_modules`; do if [ -f /lib/modules/$module.ko ]; then insmod /lib/modules/$module.ko fi done if [ -e /sys/class/net/eth0 ]; then #Randomize eth0 MAC address of maximized boards if echo "$CONFIG_BOARD" | grep -q maximized; then ifconfig eth0 down echo "Generating random MAC address (might take a while)..." mac=$(generate_random_mac_address) echo "Assigning randomly generated MAC: $mac to eth0..." ifconfig eth0 hw ether $mac ifconfig eth0 up fi # Set up static IP if [ ! -z "$CONFIG_BOOT_STATIC_IP" ]; then ifconfig eth0 $CONFIG_BOOT_STATIC_IP #Get ip from DHCP elif [ -e /sbin/udhcpc ];then if udhcpc -T 1 -q; then if [ -e /sbin/ntpd ]; then DNS_SERVER=$(grep nameserver /etc/resolv.conf|awk -F " " {'print $2'}) killall ntpd 2&>1 > /dev/null if ! ntpd -d -N -n -q -p $DNS_SERVER > /dev/ttyprintk; then if ! ntpd -d -d -N -n -q -p ntp.pool.org> /dev/ttyprintk; then echo "NTP sync unsuccessful." > /dev/tty0 fi fi hwclock -w echo "" > /dev/tty0 date=`date "+%Y-%m-%d %H:%M:%S %Z"` echo "Time: $date" > /dev/tty0 fi fi fi ifconfig eth0 > /dev/ttyprintk if [ -e /bin/dropbear ]; then # Set up the ssh server, allow root logins and log to stderr if [ ! -d /etc/dropbear ]; then mkdir /etc/dropbear fi dropbear -B -R 2>/dev/ttyprintk fi echo "" > /dev/tty0 ifconfig eth0 | head -2 > /dev/tty0 fi