Hallo,
ich bekommen das WOL Modul einfach nicht zum laufen.
Etherwake bzw. wakeonlan habe ich installiert und über ssh vom System auf dem fhem läuft auch das NAS per etherwake oder wakeonlan geweckt.
Setze ich das NAS über das WOL Modul auf on passiert nichts.
Das Attribut syscmd hatte ich auch schon gesetzt.
Im fhem Log erscheint kein wirklicher Fehler:
2015.01.06 21:33:51 3: [NAS] set NAS on
2015.01.06 21:33:51 3: [NAS] waking NAS with MAC 00:xx:xx:xx:xx:1A IP 192.168.1.2
Auf dem Cubie habe ich noch nichts an logs gefunden, wie ich der Sache woran es hapert näher kommen könnte...
Wenn ich den Befehl über qx() aus fhem absetze, geschieht ebenso nichts...
Kann jemand helfen?
Grüße
Du könntest das WOL-Paket direkt aus Perl-Code verschicken. Sieht dann beispielsweise so aus:
sub sendMagicPacketWol($)
{
my ($mac) = @_;
Log 3, "Sending WOL packet to: $mac";
Net::Wake::by_udp(undef,$mac);
return:
}
Musst dafür jedoch noch das Perl-Module Net::Wake installieren.
Klappt gut bei mir...
WOL ist zickig, weil nicht standardisiert.
versuch mal die Varianten: UDP bzw. EW.
Dahinter verstecken sich unterschiedliche Möglichkeiten ein WOl auszuführen.
die definition:
Internals:
CFGFN
DEF <MAC> <IP>
INTERVAL 900
IP <IP>
MAC <MAC>
MODE BOTH
NAME wol.ITInfrastructure.server.FreeNAS
NR 193
REPEAT 000
STATE off
TYPE WOL
Readings:
2015-01-07 00:00:19 active on
2015-01-07 00:01:22 isRunning false
2015-01-07 00:00:22 packet_via_EW <MAC>
2015-01-07 00:00:22 packet_via_UDP <IP>
2015-01-07 00:01:22 state off
Attributes:
alias FreeNAS-Server-WOL
group WakeOnLAN
icon it_nas
room IT Infrastruktur
sorgt bei mir für folgenden Log Output:
2015.01.07 00:00:19 3: [wol.ITInfrastructure.server.FreeNAS] set wol.ITInfrastructure.server.FreeNAS on
2015.01.07 00:00:19 3: [wol.ITInfrastructure.server.FreeNAS] waking wol.ITInfrastructure.server.FreeNAS with MAC <MAC> IP <IP>
und einen laufenden Server... schau bei dir mal nach dem "MODE" - siehe rot markiert -
Ich starte beide QNAPs problemlos über WOL. Herunterfahren sieht da schon anders aus.
Aber ganz blöd gefragt: Kann Dein NAS Wake-On-Lan ?
Die "einfacheren" oder teilweise älteren Modelle von Qnap können das beispielsweise garnicht....
[quote author=fidel link=topic=31673.msg241430#msg241430 date=1420578741]
Etherwake bzw. wakeonlan habe ich installiert und über ssh vom System auf dem fhem läuft auch das NAS per etherwake oder wakeonlan geweckt.
Wenn ich das richtig verstehe, dann funktioniert es, wenn er es per Hand startet.
Hallo,
ich habe auch eine Synology Diskstation und habe das WOL per fhem (auch mit Mode BOTH) noch nicht hinbekommen - vom PC aus klappt's mit irgendeiner Windows Freeware
Ronny
define QNAP1 WOL 00:00:00:00:00:00 192.168.XXX.XXX EW
So starte ich das QNAP, setzt mal das EW hinter die IP-Adresse (wie Dietmar empfohlen hat)
WOL klappt bei mir per EW, aber fhem braucht root rechte.
Zitat von: Bartimaus am 07 Januar 2015, 11:55:13
Ich starte beide QNAPs problemlos über WOL. Herunterfahren sieht da schon anders aus.
Geht per Telnet:
sub NAS_Shutdown()
{
use Net::Telnet ();
my ($t) = new Net::Telnet ( Timeout=>10,
Errmode=>'die');
$t->open("192.168.1.2");
Log 1, "NAS: Verbindung hergestellt";
$t->waitfor('/NAS login: $/i');
$t->print("admin");
Log 1, "NAS: login eingegeben";
$t->waitfor('/Password: $/i');
$t->print("Password");
Log 1, "NAS: Passwort eingegeben";
$t->waitfor('/#/i');
$t->print('poweroff');
Log 1, "NAS: Shutdown Befehl ausgegeben";
my ($output) = $t->waitfor('/>/i');
print $output;
Log 1, "NAS: Shutdown abgeschlossen";
}
@Strauch
Danke für den Tip.
Probier ich mal. Muss nur mal checken ob telnet bei den QNAPs aktiviert ist.
Zitat von: vbs am 07 Januar 2015, 11:57:44
[quote author=fidel link=topic=31673.msg241430#msg241430 date=1420578741]
Etherwake bzw. wakeonlan habe ich installiert und über ssh vom System auf dem fhem läuft auch das NAS per etherwake oder wakeonlan geweckt.
Wenn ich das richtig verstehe, dann funktioniert es, wenn er es per Hand startet.
richtig. Wenn das NAS es nicht könnte würde ich mir daran nicht die Zähne ausbeißen.
Die device defs ew udp both habe ich auch alle durch.
Zitat von: fidel am 07 Januar 2015, 14:30:23
Die device defs ew udp both habe ich auch alle durch.
Hat denn fhem root rechte?
Ok jetzt funktioniert es.
Ich habe in /etc/sudoers
fhem = ALL = NOPASSWD: /usr/sbin/etherwake
angelegt, sodass fhem etherwake ohne Passwortabfrage ausführen kann.
im WOL Modul vor dem absetzen des Befehls ein sudo vorangestellt
Und WOL das passende sycmd gegeben.
Komisch ist, dass es ohne das syscmd Attribut nicht geht.
Beim entfernen der nicht passenden Pfade im WOL Modul geht es auch ohne syscmd Attribut.
# Fritzbox Raspberry Raspberry aber root
my @commands = ("/usr/bin/ether-wake", "/usr/bin/wakeonlan", "/usr/sbin/etherwake" );
Also bei mir klappt das mit dem WOL-Modul nicht per UDP :( Die Variante mit ether-wake finde ich nicht so attraktiv, wegen der Abhängigkeit zu einem weiteren Programm und dem Rechteproblem.
Mit einem simplen Perl-Befehl geht es aber bei mir problemlos ohne root-Rechte: Net::Wake::by_udp(undef,$mac);
Definiert habe ich das so:
define wolDevice WOL 80:ee:73:1f:e6:df 192.168.2.205 UDP
Mache ich da etwas falsch? Kann mir eigentlich nicht vorstellen, dass mit dem WOL-Modul etwas nicht geht, was aber mit einem einzigen Perl-Befehl geht :/
Hallo,
meine Synology DS213+ hat bisher nie auf das WOL command reagiert. Heute bin ich auf die Idee gekommen, mal eth1 anstatt eth0 auszuprobieren, über commandline im telnet. Und dann gehts!!
Dann habe ich im modul 98_WOL.pm in der SUB WOL_by_ew das sysCmd verändert, und dort dann das eth1 eingefügt:
$sysCmd = "$sysCmd -i eth1 $mac"; anstatt (vorher) $sysCmd = "$sysCmd $mac";
Seitdem funktioniert bei mir der WOL.
Hat jemand die gleichen Erfahrungen gemacht, und könnte man das WOL modul nicht dahingehend erweitern das man auch die ethernet schnittstelle angebenkann, also entweder eth0 oder eth1?
Dank, Ingolf
Ja könnte ich erweitern - das ist aber ein seltener Fall
ZitatJa könnte ich erweitern - das ist aber ein seltener Fall
Das ist jetzt die Frage.
Ich habe nach 2 Tagen herum probieren, endlich heraus gefunden, dass mein Selbstbau-NAS mit Openmediavault darauf
nur zuverlässig startet wenn ich "ether-wake
-i lan MAC-Adresse" benutze.
Jetzt habe ich mich im Forum angemeldet, weil ich daran verzweifelt bin WOL die -i Option beizubringen.
Bevor ich um Hilfe schreien konnte, habe ich doch noch zufällig den Beitrag von inoma gelesen. Jetzt läuft es.
Wäre schon nicht schlecht, wenn man das über ein Attribut einstellen könnte ohne im WOL-Modul rumzupfuschen zu müssen.
Vielleicht betrifft das ja doch mehr Leute.
ich sehe es mir mal an. Scheint nicht so kompliziert zu sein
ich habe folgene Veränderung vorbereitet.
mit
attr sysInterface lan
kann das Interface definiert werden
sysCmd kann künftig folgende Werte haben:
attr sysCmd /bin/ether-wake -i $sysInterface $mac
$sysInterface und $mac werden durch die konkreten Werte ersetzt.
Trifft das auf Eure Zustimmung?
Super.
Danke
eingecheckt - probiert es mal aus!
So ausprobiert.
Funktioniert. Nochmal Danke.
Wenn ich jetzt noch heraus finde, warum das NAS manchmal angeht obwohl keiner da ist,
dann bin ich zufrieden.
Ich habe ein NAS von Buffalo. Diese kann durch eine Windoof-Software NasNavigator verwaltet werden.
Sie hat hin und wieder bis zur Deinstallation auch beim die Linkstation geweckt.
Vielleicht hast du ja auch eine solche SW installiert.
Ich habe ein Eigenbau-NAS mit Openmediavault darauf.
Aber ich bin mir sicher, am NAS liegt es nicht.
Der Aufweckbefehl kommt definitiv vom Presence-Modul, sieht man im Log.
Ich habe da unseren Wohnzimmer-TV im Verdacht.
Der hat die dumme Angewohnheit, manchmal von selbst kurz anzugehen. Irgendein Firmwarebug.
Nur wenn das zutrifft, wäre es dann doch öfters als gedacht.
Werde mal den State vom TV loggen.
Das presence modul hat wohl auch ein wol Attribut. Vielleicht liegt es daran...