Joy
01.12.03, 22:26
Hallo!
Ich möchte hier ein kleines Script vorstellen, welches ich geschrieben habe, um meinen Server herunterzufahren, sobald keiner der Clients mehr an ist. So kann ich ihn auf den Dachboden stellen, er wird dann per wake on lan geweckt, sobald der erste Client hochfährt.
Per cronjob checkt er alle 10 Minuten, ob er noch gebraucht wird, wenn nicht fährt er sich runter.
Das Script an sich ist nichts Wildes, erspart aber eventuell jemandem die selbe Arbeit. Muss ja nicht sein :)
Aufgepasst, hier das Script:
#!/bin/sh
HOSTS=3
declare -i UPs=0
HOST[1]="192.168.1.1"
HOST[2]="192.168.1.3"
HOST[3]="192.168.1.4"
for (( i = 1; i <= $HOSTS; i++ ));
do
if ping -q -c 1 ${HOST[i]}
then let UPs=$UPs+1
fi
done
if [[ $UPs = 0 ]]
then echo "There are $UPs Hosts alive. Shutting down."; /sbin/halt;
fi
Die Zeile für die /etc/crontab sieht so aus:
0,10,20,30,40,50 * * * * root /usr/local/bin/lanalive
Natürlich müssen alle Variablen auf die lokalen Verhältnisse angepasst werden ...
So, und nun viel Spaß damit!
Joy
Ich möchte hier ein kleines Script vorstellen, welches ich geschrieben habe, um meinen Server herunterzufahren, sobald keiner der Clients mehr an ist. So kann ich ihn auf den Dachboden stellen, er wird dann per wake on lan geweckt, sobald der erste Client hochfährt.
Per cronjob checkt er alle 10 Minuten, ob er noch gebraucht wird, wenn nicht fährt er sich runter.
Das Script an sich ist nichts Wildes, erspart aber eventuell jemandem die selbe Arbeit. Muss ja nicht sein :)
Aufgepasst, hier das Script:
#!/bin/sh
HOSTS=3
declare -i UPs=0
HOST[1]="192.168.1.1"
HOST[2]="192.168.1.3"
HOST[3]="192.168.1.4"
for (( i = 1; i <= $HOSTS; i++ ));
do
if ping -q -c 1 ${HOST[i]}
then let UPs=$UPs+1
fi
done
if [[ $UPs = 0 ]]
then echo "There are $UPs Hosts alive. Shutting down."; /sbin/halt;
fi
Die Zeile für die /etc/crontab sieht so aus:
0,10,20,30,40,50 * * * * root /usr/local/bin/lanalive
Natürlich müssen alle Variablen auf die lokalen Verhältnisse angepasst werden ...
So, und nun viel Spaß damit!
Joy