Gentoo NvramWakeup

Aus VDR Wiki
Wechseln zu: Navigation, Suche

TODO

Bitte alles, was zu Nvram-wakeup allgemeines hier steht, auf die Seite NVRAM_WakeUp verschieben und hier nur die Gentoo-spezifischen Sachen lassen.

Allgemeines

Nvram-wakeup (nvram - engl. Non-Volatile RAM) dient dazu mit VDR zeitgesteuert aufzunehmen, den Rechner automatisch zur Aufnahme hochzufahren. Auf der Seite http://sourceforge.net/projects/nvram-wakeup findet man stets die aktuellste Version und auch eine Datenbank der bereits getesteten Motherboards. Nvram benützt die Biosfunktion "Wake up by Alarm" oder "Wake up by Ring". Es werden beim beenden von VDR die Zeitangaben des nächstliegenden Timers übernommen und ins Bios geschrieben. Als allererstes empfehle ich, nachzuschauen ob dein Board unterstützt wird, falls das nicht der Fall ist würde ich einen trockenen Test machen: im Bios händisch eine Wakeup Zeit eintragen und kontrollieren ob das geht. Damit nvram-wakeup unter gentoo funktioniert müssen die Kerneloptionen character devices /dev/nram support und Enhanced Realtime Clock support aktiviert sein. (Ich habe beide als Module, nvram in /etc/modules.autoload hinzugefügt)

Zur Installation

Beim setzen der Wakeupzeit durch VDR gibt es drei verschiedene Varianten wie sich das Bios deines Motherboards verhält:

  • 1. Die Werte werden beim herunterfahren übernommen und es ist kein Reboot nötig
  • 2. Die Werte werden beim herunterfahren übernommen aber es ist ein Reboot nötig
  • 3. Das Motherboard benötigt einen Reboot, wenn der Status des Alarms (ein/aus) ändert - need reboot on state

Je nach Motherboard/Bios ist die Installation verschieden, eine ausführliche Anleitung ist unter http://home.t-online.de/home/hubertus.sandmann/vdr_wakeup.htm zu finden. Was dort nicht erklärt wird, ist das Vorgehen mit Grub dem standardmässigen Bootloader von Gentoo. (standardmäßig = der erste im Installationsguide) Beim Fall 1. gibt es keine Massnahmen zu treffen, beim 2. und 3. Fall to be continued

Falls VDR mit dem Benutzer vdr läuft, müssen noch folgende Änderungen durchgeführt werden. Aufruf von "visudo" und folgende Zeilen hinzufügen:

# User privilege specification
root    ALL=(ALL) ALL
vdr     ALL=(ALL) NOPASSWD: /usr/bin/vdrshutdown.sh, /usr/bin/nvram-wakeup, /sbin/reboot, /sbin/poweroff

Dann noch das Skript /usr/bin/vdrshutdown.sh anpassen:

#!/bin/bash
#
# sample vdrshutdown script (needs nvram-wakeup)
#
# If vdr runs with UID !root you should add:
# vdr ALL=(ALL) NOPASSWD: /usr/bin/vdrshutdown.sh
# to your sudousers (visudo as root)
#
#

if [ "$1" -ne "0" ]; then
        sudo /usr/bin/nvram-wakeup -s$1 -l -C /etc/nvram-wakeup.conf
#       /sbin/lilo -R PowerOff
        sudo /sbin/poweroff
else
        sudo /usr/bin/nvram-wakeup -d
        sudo /sbin/poweroff
fi