RalfFriedl
IPPF-Urgestein
- Mitglied seit
- 22 Apr 2007
- Beiträge
- 12,343
- Punkte für Reaktionen
- 1
- Punkte
- 0
Wenn Du Dir etwas Mühe mit der Rechtschreibung geben und das Programm in CODE-Tags setzen würdest, würde ich Dir meine Vermutung mitteilen.
#!/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 new firmware ..."
LED_DEVICE=/proc/led_mod/led
if [ ! -f /proc/led_mod/led ] ; then
LED_DEVICE=/var/led
echo "set led: ${LED_DEVICE}"
fi
##################################################################################
# start info led flashing
##################################################################################
echo "set INFO led to blink (modul=7, state=4)"
echo 7,4 > ${LED_DEVICE}
cat > /var/tmp/debug.cfg << 'EOF'
#!/bin/sh
LED_DEVICE=/proc/led_mod/led
if [ ! -f /proc/led_mod/led ] ; then
LED_DEVICE=/var/led
echo "set led: ${LED_DEVICE}"
fi
# start internet phone led flashing
echo "set internet phone led to blink (modul=14, state=3)"
echo 14,3 > ${LED_DEVICE}
# check kernel version
KERNEL_VERSION=`uname -r | grep 2.6`
if [ -z "${KERNEL_VERSION}" ]
then
KERNEL_VERSION="linux24"
ETHERWAKE="etherwake"
else
KERNEL_VERSION="linux26"
ETHERWAKE="ether-wake"
fi
# init busybox var
BUSYBOX="/bin/busybox"
# wait to be able to interrupt in case of emergency
sleep 120
major=`grep tffs /proc/devices`
tffs_major=${major%%tffs}
#write calllog
cat > /var/calllog << 'ENDCALLLOG'
#!/bin/sh
CALLER=${1}
LINE=${3}
if [ -z "${LINE}" ]
then
LINE=${2}
fi
if [ "${LINE}" = "ISDN" ]
then
LINE=${2}
fi
if [ -z "${LINE}" ]
then
LINE=${1}
CALLER=""
fi
sh /var/tmp/parse_telefon.sh "${LINE}" "${CALLER}" &
ENDCALLLOG
# save /var/calllog
mknod /var/flash/calllog c $tffs_major $((0x77))
cp /var/calllog /var/flash/calllog
# write dummy callmessage script
echo "#!/bin/sh" > /var/tmp/callmessage.sh
# make it executable
chmod +x /var/tmp/callmessage.sh
# write WakeOnCall script
cat > /var/tmp/woc.sh << 'ENDWOC'
#!/bin/sh
pcaller="0000000000"
pcalled="SIPX"
# read params
caller=$2
called=$1
# DEBUG: gibt alle anrufe aus
# echo "${called} - ${caller}" > /var/tmp/blubb
# check if woc is permitted for caller and called
if [ "${pcaller}" = "all" ]
then
if [ "${pcalled}" = "all" ]
then
/var/tmp/startpc
elif [ "${pcalled}" = "${called}" ]
then
/var/tmp/startpc
fi
elif [ "${pcaller}" = "${caller}" ]
then
if [ "${pcalled}" = "all" ]
then
/var/tmp/startpc
elif [ "${pcalled}" = "${called}" ]
then
/var/tmp/startpc
fi
fi
ENDWOC
# make it executable
chmod +x /var/tmp/woc.sh
# write parse_telefon script to file
cat > /var/tmp/parse_telefon.sh << 'ENDPARSETEL'
#!/bin/sh
trap "" SIGCHLD
prefix=
caller="$2"
called="$1"
called=${called%%#*}
# normalize caller
case ${caller} in
0049*)
caller=0${caller#*0049}
;;
49????????*)
caller=0${caller#*49}
;;
[1-9]????????*)
caller=0${caller}
;;
[1-9]*)
caller=${prefix}${caller}
;;
esac
# exec woc.sh
/var/tmp/woc.sh ${called} ${caller} &
# exec callmessage.sh
/var/tmp/callmessage.sh ${called} ${caller} &
ENDPARSETEL
# make it executable
chmod +x /var/tmp/parse_telefon.sh
# load etherwake
# CONFIGURATION
# Etherwake
# MAC address
wolmac="00:00:00:00:00:00"
# interface to use for WOL
# intf = std - ata
# eth0 = LAN1 - WAN
# eth1 = LAN2 - LAN1
wolinterface="eth0"
# CONFIGURATION END
# create simplified WOL script
echo "${BUSYBOX} ${ETHERWAKE} -i ${wolinterface} ${wolmac}" > /var/tmp/startpc
# make it executable
chmod +x /var/tmp/startpc
# stop internet phone led flashing
echo 14,1 > ${LED_DEVICE}
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
# (c) 2006 - 2009 Andreas Baginski
Lies doch bitte mal die Forumsregeln und, ganz wichtig:...sagen wo der fehler liegt?
Wie erstellt man ein Image, wenn kein Windows vorhanden ist? Denn die die Site The-construct ist ja leider Offline. Gibt es dazu eine Alternative?
cat << 'ENDE' > /var/tmp/callog
##
#
# hier jetzt alles das, was in die Datei reinsoll,
# siehe auch Beschreibung auf der Seite davor
# Einfach im Editor bearbeiten
# und unter die obrige Zeile (cat ... )
# reinpasten
#
##
ENDE
# die Zeile hiervor darf wirklich nur genau ENDE enthalten,
# kein Leerzeichen davor oder dahinter !!
# jetzt nochmal den Inhalt kontrollieren:
cat /var/tmp/callog
# wenn alles korrekt ist, ins Flash kopieren
cat /var/tmp/callog > /var/flash/calllog
cat << 'ENDE' > /var/tmp/callog
##
#!/bin/sh
# CALLOG für Wake on Call
caller1=0123456789 #Hier soll jetzt meine Handynummer rein?
caller2=0123456780
case "$2" in
555555) #Soll da meine SIP-Nummer ohne VOrwahl hin?
if [ "$caller1" = "$1" -o "$caller2" = "$1" ]; then
echo "Booting PC1"
/usr/bin/ether-wake -i eth0 00:1A:1A:1A:1A:1A #Hier die MAC - ist klar
else
echo "Unberechtigter Anrufer, nämlich: $1"
fi
;;
555556)
if [ "$caller1" = "$1" -o "$caller2" = "$1" ]; then
echo "Booting PC2"
/usr/bin/ether-wake -i eth0 00:1B:1B:1B:1B:1B
else
echo "Unberechtigter Anrufer, nämlich: $1"
fi
;;
555557)
if [ "$caller1" = "$1" -o "$caller2" = "$1" ]; then
reboot
else
echo "Unberechtigter Anrufer: $1"
fi
*)
echo "Falsche MSN"
;;
esac
exit 0
#
##
ENDE
# die Zeile hiervor darf wirklich nur genau ENDE enthalten,
# kein Leerzeichen davor oder dahinter !!
# jetzt nochmal den Inhalt kontrollieren:
cat /var/tmp/callog
# wenn alles korrekt ist, ins Flash kopieren
cat /var/tmp/callog > /var/flash/calllog
: not foundlog: line 2:
: not foundg: line 5:
: not foundg: line 9:
: not foundg: line 12:
: not foundg: line 19:
: not foundg: line 24:
: not foundg: line 28:
: not foundg: line 31:
/var/calllog: line 54: syntax error: end of file unexpected (expecting "then")
Apr 17 19:54:19 telefon[415]: SIGCHLD received!