Mein ehemaliger Router fungiert nun nur noch als Fileserver. Der braucht natürlich nicht immer zu laufen. Schliesslich ist während der Woche frühestens gegen 15:30 jemand mit Serverbedarf zu Hause. (Hinweis an potentielle Besucher: Der schwarze Hund und Frau sind aber da ): ) Deshalb habe ich mich mal mit Wake on Lan beschäftigt. Mein Board hat eine integrierte Ethernetkarte mit Realtek Chipsatz (rtl8139). Im BIOS habe ich die WakeonLan Option eingeschaltet. Das ist dort als Wake on Ring beschrieben. Wenn der Rechner jetzt ausgeschaltet ist, sieht man am Switch die Port Led leuchten. Dies ist schon mal ein deutlicher Hinweis, das die Netzkarte offenbar mit Strom versorgt wird. Das aufwecken klappt aber nicht einfach so. Man muss der Schnittstelle mit dem Programm ethtool (
apt-get install ethtool) noch mitteilen, das man auch Wake on Lan eingeschaltet haben möchte.
ethtool eth0
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Half
Port: MII PHYAD: 32
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
Link detected: yes
Die entscheidenen Zeilen habe ich
fett hervorgehoben. Die einzelnen Buchstaben stehen für
Die Buchstaben bedeuten
p Wake on phy activity
u Wake on unicast messages
m Wake on multicast messages
b Wake on broadcast messages
g Wake on MagicPacket(tm)
Ich habe mich für
g entschieden, weil diese Option verhindert, das der Rechner ungewollt aufwacht, wenn irgendwelche nmb smb Pakete von W$ Rechnern rumgeistern. MagicPacket ist ein
Verfahren von AMD (eingetragene Schutzmarke), in dem 6 mal Hex $FF und direkt 16 mal die Mac-Adresse der Karte an die Karte übertragen wird. Das ist das Signal für die Karte den Poweron Button zu drücken, um mal bildhaft zu bleiben. Vorteil bei einer integrierten Lösung ist, das man nicht auf ein zusätzliches Kabel von der Netzkarte zum Motherboard angewiesen ist.
Zum aufwecken von Linuxseite reicht ein schlankes apt-get install wakeonlan .
Jetzt kann man mit wakeonlan 00:10:DC:33:87:10 (die Mac Adresse lässt sich z.B. mit arp ip-adresse des Servers leicht herausfinden) der Server einschalten. Ein Desktop Icon mit diesem Einzeiler, oder ein alias darauf ist schnell gebastelt. W$ Nutzer können es mit dem GUI Programm von mhsoft machen.
Viel interessanter ist das automatische abschalten des Fileservers. Da habe ich ein wenig herumexperimentiert.
Das Script zum setzen des Magic Modes der Netzwerkkarte ist /etc/init.d/aktiviere_wol (Originalscript von hier )
Ich überwache mit einem kleinen script den Traffic auf der Netzkarte des Fileservers. Da ich die RX und TX Pakete zusammenzähle und mit dem Wert nach 29 Minuten vergleiche, erfasse ich so auf einfache Weise alle angebotenen Dienste und bin auch vor Äberraschungen sicher. Denn wenn ich gerade per ssh dort eingeloggt bin, möchte ich ja auf gar keinen Fall, das der Server runterfährt. Ich habe eine kleine Toleranz und 250 Paketen eingebaut, da der W$ im Netz mit seinen Samba Gespamme etwas Traffic verursacht. Dieser Wert muss an die örtlichen Gegebenheiten angepasst werden.
Das Script rufe ich per cronjob auf. anacron wäre auch 'ne Möglichkeit.
crontab -l
0,30 * * * * /usr/local/bin/runter.sh >/dev/null 2>&1
Beide Scripte liegen im
Downloadbereich