Hallo,
ich habe ein Problem ich habe ein Skript angepasst das den Online-Status überprüft und ggf einen Neustart durchführt, das ganze soll auf einer 6840 lte laufen (verliert öfters mal das internet).
das ganze habe ich erfolgreich unter Debian getestet. Wenn ich es auf der 6840 lte teste funktioniert das Hochzählen mit MISSED++ nicht. Ich habe es schon mit MISSED=MISSED+1 ohne erfolg getestet. Was mache ich da falsch?
gruss
tchleb
ich habe ein Problem ich habe ein Skript angepasst das den Online-Status überprüft und ggf einen Neustart durchführt, das ganze soll auf einer 6840 lte laufen (verliert öfters mal das internet).
Code:
#!/bin/bash
# Überprüfen ob Internet verfügbar und ggf Neustart
#Einstellungen
#IP zum anpingen
WATCH_IP="8.8.8.8"
#Pfad zum Logfile
LOGFILE="/dev/null"
#pause (in sekunden) zwischen den pings
PAUSE=5
#Anzahl der fehlgeschlagenen pings zum Neustart
TESTS=70
#SCRIPT
MISSED=0
while true; do
if ! ping -c 1 -w 1 $WATCH_IP > /dev/null; then
((MISSED++))
else
if [ $MISSED -ge $TESTS ]; then
echo `date` '-' $WATCH_IP "ist wieder online." >> $LOGFILE;
fi
MISSED=0
fi;
if [ $MISSED -eq $TESTS ]; then
echo `date` "-" $WATCH_IP "ist offline." >> $LOGFILE;
#NEUSTART
/sbin/reboot
fi
sleep $PAUSE;
done
das ganze habe ich erfolgreich unter Debian getestet. Wenn ich es auf der 6840 lte teste funktioniert das Hochzählen mit MISSED++ nicht. Ich habe es schon mit MISSED=MISSED+1 ohne erfolg getestet. Was mache ich da falsch?
gruss
tchleb