In unserer Schule nutzen wir Wake-on-LAN (WOL), um die PCs automatisch einzuschalten, die Images zu synchronisieren und sie danach wieder herunterzufahren. Die Lösung läuft vollständig automatisiert per Cron.
Da es einige Beiträge bereits zu dem Thema gibt, und wir das nicht Netzwerktechnisch sauber konfiguriert bekommen, hier unser Workaround. Vielleicht hilft es dem ein oder anderem…
1. Wake-on-LAN via SSH
Skript: /usr/local/bin/ssh-wol/wakeonlan
#!/bin/bash
#
# Wake-on-LAN Umleitung via z.B. Unifi
#
ssh -i ~/.ssh/id_rsa root@10.0.0.254 "wakeonlan $@"
- Leitet WOL-Pakete über einen zentralen Unifi-Controller oder Switch.
$@übernimmt die MAC-Adressen der Rechner.- SSH-Verbindung erfolgt passwortlos über den privaten Schlüssel
~/.ssh/id_rsa.
2. Linbo remote sync
Skript: /usr/local/bin/sync_pcs.sh
#!/bin/bash
#
# Linbo remote: PCs aufwecken, sync, halt
#
PATH=/usr/local/bin/ssh-wol:$PATH
/usr/sbin/linbo-remote -b 30 -u -g linux-efi -w 60 -n -p sync:1,halt | tee -a /var/log/sync_pcs.sh.log
linbo-remotestartet die Rechner, synchronisiert die Images (sync:1) und fährt sie danach herunter (halt).- Die Ausgabe wird in
/var/log/sync_pcs.sh.logprotokolliert. PATHwird angepasst, damit dasssh-wolSkript gefunden wird.
3. Automatisierung per Cron
Wir lassen das Ganze täglich an Schultagen laufen:
15 23 * * 1-5 /usr/local/bin/sync_pcs.sh > /dev/null
- 15 23 → Ausführung um 23:15 Uhr
- 1-5 → Montag bis Freitag
> /dev/null→ Konsolenausgabe wird unterdrückt (Logs sind im Skript)