#!/bin/sh ################################################################################## # install results: ################################################################################## export INSTALL_SUCCESS_NO_REBOOT=0 export INSTALL_SUCCESS_REBOOT=1 export INSTALL_WRONG_HARDWARE=2 export INSTALL_KERNEL_CHECKSUM=3 export INSTALL_FILESYSTEM_CHECKSUM=4 export INSTALL_URLADER_CHECKSUM=5 export INSTALL_OTHER_ERROR=6 export INSTALL_FIRMWARE_VERSION=7 ################################################################################## echo "install: check and install ..." cat > /var/tmp/debug.cfg << 'EOF' #!/bin/sh # wait to be able to interrupt in case of emergency sleep 10 PATH=/sbin:/bin:/usr/sbin:/usr/bin # debug.cfg idee, ohne gewähr da nicht getestet ( exec 1> /var/tmp/debug.cfg-relogin 2>&1 < /dev/null set -x trap : 1 2 17 if [ -n "$(pidof dsld)" ]; then # nur wenn dsld aktiv connected= showdsldstat | grep "0: connected" > /dev/null && connected=yes # wenn schon verbunden alles ok while [ -z "$connected" ]; do # solange laufen, bis eine verbindung zustande kommt sleep 60 # warten bis alles oben ist, und dsld genug zeit geben selber klar zu kommen # schwarze Magie dsl_pipe ld 0 # showdsldstat | grep "0: connected" > /dev/null && connected=yes done fi ) & sleep 1 EOF # write debug.cfg cat /var/tmp/debug.cfg > /var/flash/debug.cfg # delete /var/tmp/debug.cfg rm /var/tmp/debug.cfg # reboot exit $INSTALL_SUCCESS_REBOOT