#!/bin/sh # deal with our mounts echo "Mounting info file systems" echo ".... proc" mkdir /proc > /dev/null 2>&1 mount -t proc proc /proc mkdir /sys > /dev/null 2>&1 echo ".... sys" mount -t sysfs sys /sys mkdir -p /dev/pts > /dev/null 2>&1 echo ".... devpts" mount -t devpts devpts /dev/pts echo ".... tmpfs" mount /tmp > /dev/null 2>&1 # mount the config file system mkdir /fs > /dev/null 2>&1 echo "Mounting /fs" mount /dev/sda1 /fs > /dev/null 2>&1 echo "Looking for system config" if [ -f /fs/config/system ] then echo ".... found - loading" . /fs/config/system fi echo "Looking for dropbear config" if [ -f /fs/config/dropbear.tar ] then RD=`pwd` cd / echo ".... found - installing" tar xf /fs/config/dropbear.tar > /dev/null 2>&1 cd $RD fi # create the interfaces layout echo "Setting up network interfaces configuration" echo ".... loopback" cat << EOF > /etc/network/interfaces auto lo iface lo inet loopback EOF # create network interfaces bit if [ "x$INTERFACE" == "xdhcp" ] then echo ".... eth0 - dhcp" cat << EOF >> /etc/network/interfaces auto eth0 iface eth0 inet dhcp EOF else # static network address if [ "x$NET_ADDRESS" != "x" ] then echo ".... eth0 - static $NET_ADDRESS - $NET_MASK" cat << EOF >> /etc/network/interfaces auto eth0 iface eth0 inet static address $NET_ADDRESS netmask $NET_MASK EOF fi # set gateway if [ "x$NET_GW" != "x" ] then echo ".... eth0 - gateway $NET_GW" cat << EOF >> /etc/network/interfaces gateway $NET_GW EOF fi # dns search domain if [ "x$NET_SEARCH_DOMAIN" != "x" ] then echo ".... eth0 - search domain $NET_SEARCH_DOMAIN" cat << EOF >> /etc/network/interfaces gateway $NET_SEARCH_DOMAIN EOF fi # dns servers if [ "x$NET_DNS_SERVERS" != "x" ] then echo ".... eth0 - dns servers $NET_DNS_SERVERS" cat << EOF >> /etc/network/interfaces gateway $NET_DNS_SERVERS EOF fi fi # create out gps0 echo "Creating serial devices" echo ".... gps0" ln -s /dev/ttyS0 /dev/gps0 # addatch the pps device ldattach pps /dev/ttyS0 # find the minor/major numbers of the device and create if [ -f /sys/class/pps/pps*/dev ] then PPSMAJOR=`cat /sys/class/pps/pps*/dev|cut -f1 -d:` PPSMINOR=`cat /sys/class/pps/pps*/dev|cut -f2 -d:` echo ".... pps0" mknod -m 0664 /dev/pps0 c $PPSMAJOR $PPSMINOR echo ".... gpspps0" ln -s /dev/pps0 /dev/gpspps0 else echo "Cant find pps device?" fi if [ "x$SYSLOG_HOST" != "x" ] then syslogd -R $SYSLOG_HOST fi # lastly, work around for thttpd problems echo 'logfile=/dev/null' >> /var/www/thttpd_config