NVRAM WakeUp
Einleitung
NVRAM-Wakeup ist ein Programm, das dafür sorgt, dass ein Rechner aus dem ausgeschalteten Zustand startet.
Dazu verwendet NVRAM-Wakeup die Fähigkeiten des BIOS, den Rechner mittels RTC-Alarm (RealTimeClock-Alarm) zu einer bestimmten Zeit automatisch zu starten. Diese Fähigkeit wird von den meisten Mainboards mit ATX-Formfaktor und auch einigen AT/BAT-Mainboards mit ATX-Buchse unterstützt. NVRAM-Wakeup hängt nicht vom VDR ab, und kann aber sehr gut zum automatischen Starten des VDR rechtzeitig zur nächsten Aufnahme benutzt werden.
Der jeweils neueste Quellcode kann von der Projektseite bezogen werden.
Nach erfolgter Aufnahme lässt VDR den Rechner dann automatisch herunterfahren, soweit keine Benutzer-Aktivitäten festgestellt wurden und das Zeitlimit für Benutzerinaktivität erreicht wurde. Im shutdown-script des VDR wird NVRAM jedesmal beim Beenden des VDR aufgerufen und speichert den nächsten Aufwachzeitpunkt für die nächste Aufnahme im beschreibbaren Teil des BIOS.
Liste funktionierender Mainboards
Man unterscheidet hier zwischen Mainboards, die einen Reboot benötigen und solchen, die keinen Reboot benötigen: Bei ersteren kann die neue Aufwach-Zeit im BIOS nur aktiviert werden, wenn sie nach dem Eintragen der Zeit nochmals bis zum Laden des Kernels gebootet werden. Zweitere können nach dem Setzen der Zeit einfach per APM oder ACPI abgeschaltet werden.
Eine Liste aller explizit von NVRAM-Wakeup unterstützter Mainboards findet sich auf der Projektseite: Von VDR Nutzern werden erfolgreich/nicht erfolgreich eingesetzt:
- Asus A7v8x-x: braucht kein Reboot, keine Besonderheiten.
- Asus P5A: braucht kein Reboot, aber der Kernel muss für 128 Bytes in nvram Treiber gepatched sein. (oder seit Version 0.95 einfach die --directisa Option benutzen)
- Gigabyte GA-5AX: braucht Reboot, sonst keine Besonderheiten.
- DFI K6BV3+: BAT-Mainboard mit ATX-Netzteilbuchse, funktioniert einwandfrei bei Einsatz eines ATX-Netzteils
- Via Epia VE5000: NVRAM WakeUp kennt das Board nicht und kann die RTC-Parameter nicht ermitteln. Daher sollte set_timer verwendet/versucht werden (siehe unten).
Und wenn nvram_wakeup sagt, dass es das Motherboard nicht kennt: ... und auch die händisch ausgeführte guess_helper.sh, (zur Parameter-Ermittung) nicht hilft, gibt es noch ein Script, das im Paket NVRAM-Wakeup enthalten ist und welches immer zum Ziel führen sollte. Das Script heisst set_timer.
Installation
set_timer: Prinzipielle Installation ist im Script selbst beschrieben siehe http://cvs.sourceforge.net/viewcvs.py/*checkout*/nvram-wakeup/nvram-wakeup/set_timer?content-type=text%2Fplain&rev=HEAD
Detail-Erklärung zur CT-Distribution (speziell in welches Verzeichnis was kopieren usw.) Set timer in c't-VDR
Wie der CT-VDR arbeitet (Startet und herunterfährt) kann man hier nachlesen Struktur des c't VDR .
Installation nach Hubertus Sandmann: http://home.t-online.de/home/hubertus.sandmann/vdr_wakeup.htm
Nette Erklärung zu den verschiedenen Möglichkeiten
http://www.linux-magazin.de/Artikel/ausgabe/2004/08/wakeup/wakeup.html
Diskussionsforum im VDR-Portal: http://www.vdr-portal.de/board/board.php?boardid=9