ich habe meinen alten Windows-Home-Server beerdigt.
Auf der Suche nach einer Alternative bin ich auf NAS4Free gestossen. Vor einigen Jahren hatte ich bereits einmal FreeNAS für kurze Zeit am Laufen, es dann aber wieder verworfen.
Die Einrichtung des Systems (NAS4Free) funktioniert bisher super, eine Freigabe des Softraid-Laufwerkes klappt ebenfalls bestens.
Da ich mich noch nicht so gut mit FreeBSD auskenne, würde ich ein wenig Hilfe bei folgendem Problem benötigen:
Das der Server, zu von mir geplanten Zeiten, herunter fährt, ist zwar prima, aber .... er soll dies auch tun, wenn meine beiden Clients offline sind. Dazu habe ich hier im Forum ein Script gefunden, welches dies NAS4Free "beibringen" soll.
1) Wohin muss ich und wie kann ich das Script kopieren / installieren damit das Ganze funktioniert?
2) Auf meinem Linux-Mailserver(eisfair1) tue ich das mit WinSCP per SFTP. Wie verhält sich das bei nas4free?
Das Script habe ich in das Verzeichnis /mnt/mount/scripts/ gepackt und grundsätzlich funktioniert es per Befehl, nachdem ich den Pfad zu grep angepasst habe, es stand nämlich /sbin/grep im Script, aber dort liegt grep ja nicht, sondern in /usr/bin/ und zu 2) ich sollte schon den SSH-Dienst aktivieren...
Code: Select all
#!/bin/bash
HOST1=192.168.0.2
HOST2=192.168.0.3
_exit () {
case $1 in
1) /bin/echo "Kein Shutdown - Mindestens einer der PCs ist eingeschaltet" ;;
2) /bin/echo "Kein PC online - Shutdown" ; /sbin/shutdown -p now ;;
esac
exit $1;
}
# Checken ob PC's an sind
if [ `/sbin/ping -c 1 -i 1 $HOST1 | /usr/bin/grep -wc 100.0%` -eq 0 ] || [ `/sbin/ping -c 1 -i 1 $HOST2 | /usr/bin/grep -wc 100.0%` -eq 0 ] ; then _exit 1;
# Wenn kein PC an ist, 10 sec warten falls gerade einer Neu startet
else
/bin/echo "Kein PC online - Warte 90 Sekunden"
/bin/sleep 90
# noch mal PC's checken
if [ `/sbin/ping -c 1 -i 1 $HOST1 | /usr/bin/grep -wc 100.0%` -eq 0 ] || [ `/sbin/ping -c 1 -i 1 $HOST2 | /usr/bin/grep -wc 100.0%` -eq 0 ] ; then _exit 1;
# Wenn kein PC an ist, gehe zu exit case 2 (Shutdown)
else
_exit 2
fi
fi
Unter System/Erweitert/Cron kann ich einen Cronjob anlegen, aber wer soll ihn ausführen, root oder admin und was stellt man am besten unter Geplante Zeit ein, eventuell Monate, Wochentage, Tage, Stunden auf -> Alle, nur Minuten auf 5, damit er alle 5 Minuten das Script ausführt?
Wenn ich das so einstelle, dann erscheint nach Jetzt ausführen: cron Job wurde nicht ausgeführt.
Auch das funktioniert inzwischen, ich muss nur noch ein wenig die Shutdown-Zeit optimieren.
Sind wohl schon alle in den Weihnachtsferien, schade!
Und Tschüß!
MfG. Falconcrest

