Linux.WOL
Einen Computer aus dem "halt" wieder über die Netzwerkkarte aufzuwecken gelingt nicht immer auf Anhieb. Hier einiges Tipps?
Voraussetzungen:
- WOL fähige Netzwerkkarte die über PCI 2.2 an das Board gekoppelt ist (alternativ über WOL jumper mit Kabel)
- Integrierte Netzwerkkarte.
- BIOS: Powermanagement muss aktiv sein.
- BIOS: Aufwecken mit WOL MAC PME muss aktiviert sein.
- Im halt müssen im an das Board angeschlossenem Hub die Link Lämpchen leuchten. Ist das nicht so, hat die Karte keinen Strom.
Informationen über eine Netzwerkkarte ausgeben.
ethtool eth0 // Info ausgeben ethtool -i eth0 // Info über das geladene Modul ausgeben man ethtool // Erklärung für die WOL Buchstaben ausgeben
In ein Start-Script sollte folgendes eingetragen werden.
ethtool -s eth0 wol g
Den Rechner sollte man mit folgendem Befehl ausschalten:
halt
Ein Remote (Linux) Rechner kann mit folgendem Befehl den Ziel Rechner einschalten:
ether-wake xx:xx:xx:xx:xx:xx // MAC Adresse der Netzwerkkarte
SiS900 auf meinem ASUS Board
Dummerweise geht das Wake on Lan mit Suse 10.0 Beta 3 nicht. Der sis900.c Maintainer lebt auf dieser WebSite http://www.brownhat.org/sis900.html Ich versuche einen entsprechenden Patch einzuspielen:
cd /usr/src/linux/drivers/net wget http://www.brownhat.org/download/kpatches/sis900-wol-ethtool.diff
// Mist: ich musste den Patch per hand "einspielen": Also abtippen! Eigentlich sollte das // folgendermassen automatisch gehen: patch < sis900-wol-ethtool.diff // wieder im ./linux make cloneconfig make prepare make modules modules_install // bei meinem letzten Test musste ich noch make install reboot // machen, weis auch nicht warum!
später wollen wir auch sehen, dass unsere Compilierung auch wirklich eine durchschlagende Wirkung hatte:
ethtool -i eth0
Es muss unser gepatchter Versions String angezeigt werden! ES GEHT !!!!!!! COOOOOOOOOOLLLLLLLLLLL !
Die WOL Einstellungen der Netzwerkkarte sind offenbar nicht persistent. Deshalb muss sichergestellt werden, dass dieses Bit im Netzwerkchip immer gesetzt wird, sobald das Netzwerkinterface aktiviert wurde.
joe /etc/sysconfig/network/if-up.d/wol #!/bin/bash case "$1" in eth-id-00:13:d4:14:a5:d9) ethtool -s eth0 wol g logger "WOL auf $1 aktiviert!" ;; *) logger "kein WOL für $1!" ;; esac