heads/initrd/bin/network-init-recovery
Thierry Laurion 40c34453df
all scripts: replace TRACE manual strings with dynamic tracing by bash debug
Exception: scripts sourcing/calls within etc/ash_functions continues to use old TRACE functions until we switch to bash completely getting rid of ash.
This would mean getting rid of legacy boards (flash + legacy boards which do not have enough space for bash in flash boards) once and for all.

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
2024-02-01 15:48:27 -05:00

62 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
. /etc/functions
TRACE_FUNC
# 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