Ich habe ein Reboot-Problem mit nvram-wakeup.
Bemerken möchte ich noch, dass ich die die Werte für mein Asus CUBX Board
selber bestimmt habe, da diese noch nicht in nvram-wakeup 0.90 vorhanden waren.
Mit dem neuen nvram-wakeup 0.91 habe ich das gleiche Verhalten.
Da nach mehreren Tests mein Board nur dann aufwacht wenn zuvor ein reboot
in den Poweroff-Kernel geschieht, habe ich b->need_reboot = ALWAYS;
gesetzt.
Wenn ich eine Aufnahme programmiere und den Rechner herunterfahre (mit Poweroff
im VDR manuell ausgelöst) funktioniert alles wie erwartet:
Der Timer wird gesetzt, nvram-wakeup gibt eine 1 zurück worauf
das vdrshutdown-Skript einen reboot veranlaßt und der Rechner
mit dem Poweroff-Kernel ausgeschaltet wird. Ist alles soweit wie gewünscht.
Der Rechner startet dann auch zur eingestellten Zeit und macht die Aufnahme.
Das Problem tritt auf, wenn mehr als eine Timer-Aufnahme programmiert ist.
In diesem Fall läuft die 1.Aufnahme wie erwartet und oben beschrieben.
Wenn die 1.Aufnahme aber fertig ist, fährt der Rechner ja nun automatisch
wieder runter, doch nun gibt nvram-wakeup eine 0 (!) zurück, woraufhin nur
ein halt ausgeführt wird und der Rechner NICHT wieder aufwacht zur 2.Aufnahme.
Ich habe zur Überprüfung im vdrshutdown-Skript die Übergabeparameter
in eine Logdatei geschieben und festgestellt, das die 2.Timeraufnahme
mit allen Parametern korrekt übergeben wird.
Aber warum denkt nvram-wakeup scheinbar, dass kein Reboot erforderlich ist ???
Der Rechner verhält sich scheinbar wo als hätte ich b->need_reboot = ON_STAT;
gesetzt, es ist aber definitiv b->need_reboot = ALWAYS; gesetzt worden.
Natürlich könnte ich vdrshutdown so abändern, dass immer ein Reboot
gemacht wird, aber das ist ja nicht der Sinn der Sache.
nvram-wakeup soll bitte dann auch eine 1 zurückgeben wenn noch ein
weiterer Timer programmiert ist.
Da ich mit Linux noch nicht so fit bin würde ich die Ausgaben die
nvram-wakeup auf die Konsole scheibt gerne zur Kontrolle in eine Logdatei
schreiben. Wie geht das ?
Versuche mit der Zeile
$NVRAMCMD -ls $1 | tee --append /var/log/vdrshutdown.log
haben leider nicht funktioniert.
Gruss,
Gromit