c90b7d0eb4
git-svn-id: svn://svn.compuextreme.de/Viitor/V962/Viitor_upstart@5505 504e572c-2e33-0410-9681-be2bf7408885
83 lines
1.9 KiB
Plaintext
83 lines
1.9 KiB
Plaintext
# rc - runlevel compatibility
|
|
#
|
|
# This task guesses what the "default runlevel" should be and starts the
|
|
# appropriate script.
|
|
|
|
start on stopped maccfg
|
|
stop on stopping mountfs
|
|
|
|
console logged
|
|
|
|
pre-start script
|
|
WAITTIME=7
|
|
for IF in `ls -d /sys/class/net/*[^lo]`; do
|
|
DEVNAME=`basename $IF`
|
|
if [ -d /sys/class/net/$DEVNAME/wireless ]; then
|
|
/sbin/wlan_setup $DEVNAME
|
|
#give wlan a chance go create link
|
|
sleep 1
|
|
fi
|
|
if [ -f /usr/sbin/ethtool ]; then
|
|
ifconfig $DEVNAME up
|
|
ZAHLER=0
|
|
if ! ethtool $DEVNAME|grep -q "No data available"; then
|
|
while [ ${ZAHLER} -le ${WAITTIME} ]; do
|
|
if [ `ethtool $DEVNAME|grep Link|awk '{print $3}'` == "yes" ]; then
|
|
(( ZAHLER++ ))
|
|
else
|
|
break
|
|
fi
|
|
sleep 1
|
|
done
|
|
fi
|
|
fi
|
|
ifconfig $DEVNAME up
|
|
ZAHLER=0
|
|
while [ ${ZAHLER} -le ${WAITTIME} ]; do
|
|
if [ "`cat /sys/class/net/$DEVNAME/carrier`" == "0" ]; then
|
|
(( ZAHLER++ ))
|
|
else
|
|
break
|
|
fi
|
|
sleep 1
|
|
done
|
|
end script
|
|
|
|
script
|
|
for IF in `ld -d /sys/class/net/*[^lo]`; do
|
|
DEVNAME=`basename $IF`
|
|
if [ -f /usr/sbin/ethtool ]; then
|
|
DEVSTATUS=`ethtool $DEVNAME|grep Link|awk '{print $3}'`
|
|
fi
|
|
if [ "$DEVSTATUS" == "yes" ] || [ `cat /sys/class/net/$DEVNAME/carrier` == "1" ]; then
|
|
/sbin/if_up $DEVNAME
|
|
touch /var/run/net_up
|
|
fi
|
|
done
|
|
end script
|
|
|
|
post-start script
|
|
if [ ! -f /var/run/net_up ] && [ -f /etc/nsswitch.default ]; then
|
|
cp /etc/nsswitch.files /etc/nsswitch.conf
|
|
touch /var/state/ldap_disable
|
|
else
|
|
if [ ! -f /var/run/nsswitch_done ] && [ -f /etc/nsswitch.default ]; then
|
|
cp /etc/nsswitch.default /etc/nsswitch.conf
|
|
touch /var/state/ldap_disable
|
|
fi
|
|
if [ -f /var/run/net_up ]; then
|
|
rm /var/run/net_up
|
|
fi
|
|
if [ -f /var/run/nsswitch.done ]; then
|
|
rm /var/run/nsswitch.done
|
|
fi
|
|
fi
|
|
end script
|
|
|
|
post-stop script
|
|
for IF in `ls -d /sys/class/net/*[^lo]`; do
|
|
DEVNAME=`basename $IF`
|
|
/sbin/if_down $DEVNAME
|
|
done
|
|
end script
|