Ausschalten von linvdr 0.3

  • Hallo,


    muß das Thema nochmal ansprechen obwohl es unter http://vdrportal.de/board/thread.php?threadid=6336&sid= bereits diskutiert wurde. Ich habe auch das Problem, daß sich linvdr über den Power-Button der FB nicht ausschalten läßt. Offenbar killt das Perl-Script /usr/bin/poweroff.pl (fast) alle Prozesse, sperrt mich aus (kein SSH) und schießt lircd ab (keine FB mehr möglich), aber der vdr läuft weiter!!!


    Im Augenblick habe ich den Eintrag in /etc/init.d/runvdr hinter vdr ... -s durch "/bin/busybox poweroff" ersetzt (Hinweis: die " sind wichtig, sonst passiert garnix...), damit schaltet der vdr nun auch über die fernbedienung ab und man könnte sagen:


    Alles bestens!


    Wozu dient dann aber bitteschön das Script /usr/bin/poweroff.pl? Ich habe mir den Inhalt angesehen, verstehe aber nicht wirklich was da passiert. Soll vdr damit so ausgeschaltet werden, das er für Aufnahmen automatisch wieder einschaltet (Stichwort nvram-wakeup)?


    Nils

    --------------------------------------------------------------------------------------------
    Mein :vdr1 : Hermes 845GL Celeron 1.7GHz, 256MB RAM, 400GB Samsung-HD + Brenner, DVB-S 1.6 + Nova Budget, flüsterleise durch Lüfterumbau (Bildergalerie), Hardware-Wakeup nach Rasputin (meine Update-Website dazu) , LinVDR 0.7 + Toxic Tonic Update 1.4.7 :)

  • Servus Nils,


    :suche und zwar nach "poweroff.pl"
    http://vdrportal.de/board/thread.php?threadid=6336


    Zitat

    Wozu dient dann aber bitteschön das Script /usr/bin/poweroff.pl? Ich habe mir den Inhalt angesehen, verstehe aber nicht wirklich was da passiert. Soll vdr damit so ausgeschaltet werden, das er für Aufnahmen automatisch wieder einschaltet (Stichwort nvram-wakeup)?


    ... genau, nur dass es kein nvram-Wakeup gibt, sondern ein funktionierendes ACPI des Rechners vorausgesetzt wird.


    Viele Grüße, Mirko

  • Zitat

    Original von cooper


    ... genau, nur dass es kein nvram-Wakeup gibt, sondern ein funktionierendes ACPI des Rechners vorausgesetzt wird.


    Viele Grüße, Mirko


    Danke, dann werde ich mich mal bzgl. ACPI-Kompatibilität meines Systems umsehen.


    Vielleicht hat je jemand hier diesbzgl. auch schon Erfahrungen gesammelt: Ich setzte einen Hermes Barebone 845GL+ Celeron 1.7GHz ein, mit einer DVB v1.6.Das ist eigentlich noch ein aktuelles System, würde mich wundern, wenn das nicht ACPI-kompatibel ist. Sicherlich stimmt nur irgendeine BIOS-Einstellung nicht, welche?


    Möglicherweise kommt auch der Kernel von linvdr nicht so gut klar damit, ich habe auch schon festgestellt, daß der DMA-Modus für meine 120GB Hitachi nicht automatisch aktiviert wurde, daß habe ich inzwischen aber über hdparm... in der rcstart gelöst.


    Nils

    --------------------------------------------------------------------------------------------
    Mein :vdr1 : Hermes 845GL Celeron 1.7GHz, 256MB RAM, 400GB Samsung-HD + Brenner, DVB-S 1.6 + Nova Budget, flüsterleise durch Lüfterumbau (Bildergalerie), Hardware-Wakeup nach Rasputin (meine Update-Website dazu) , LinVDR 0.7 + Toxic Tonic Update 1.4.7 :)

  • Habe leider noch ein ähnliches Problem: Seitdem acpi bei mir funktioniert (pcchips M787 Board,
    linvdr-0.3), wecke ich immer pünktlich nachts um 1 auf, weil der vdr angeht. Im Moment helfe
    ich mir so, dass ich pro Tag mindestens einen Timer einstelle, der nicht mitten in der Nacht liegt,
    aber irgendwie gefällt mir das nicht (will ja auch mal in den Urlaub fahren, ohne dass jede Nacht
    der vdr angeht).


    Weiß jemand, wo das herkommt oder wie sich das ändern läßt? Autotimer habe ich drin, aber nur
    für einmal wöchentlich, kann das damit zusammenhängen?


    Wenn ich (ohne Timer für den nächsten Tag) die entsprechende Zeile aus der poweroff.pl
    von Hand aufrufe, sieht das so aus:


    linvdr:~# svdrpsend.pl next abs
    220 linvdr SVDRP VideoDiskRecorder 1.2.5; Sun Oct 19 15:22:18 2003
    550 No active timers
    221 linvdr closing connection


    Trotzdem steht anschliessend ff. als Weckzeit drin:
    linvdr:~# cat /proc/acpi/alarm
    0003-10-19 01:00:00


    Für Hinweise besten Dank im Voraus!


    lulatsch

    M787CLR (VIA C3 666MHz) RAM 256MB HD IBM 120GB DVB-s Nexus 2.1 LCD 20x4 LinVDR 0.7 Cody-1.3.34-Tarandor Gehäuse
    Zotac IONITX-F-E, 320GB HDD, 2GB Ram, TT connect S2-3600; MLD 5.4 :cool1

    Mehrere MiniDVBlinux auf Raspi 2/3/3+ mit Sundtek Ultimate V im Netz

  • Zitat

    Original von lulatsch
    Habe leider noch ein ähnliches Problem: Seitdem acpi bei mir funktioniert (pcchips M787 Board,
    linvdr-0.3), wecke ich immer pünktlich nachts um 1 auf, weil der vdr angeht. Im Moment helfe
    ich mir so, dass ich pro Tag mindestens einen Timer einstelle, der nicht mitten in der Nacht


    Ich habe leider keine Informationen darüber wie sich der Alarm wieder abschalten lässt finden können (auch nicht im Source).


    Weis da jemand mehr?


    Tom.


  • Probier mal ob:


    echo "0003-10-20 99:00:00" > /proc/acpi/alarm


    den Alarm bei dir abschaltet. Poste mal ein "cat /proc/acpi/alarm" nach dem echo.


    Tom.

  • Ok, habe ff. probiert:


    linvdr:~# cat /proc/acpi/alarm
    0003-10-19 19:20:20
    linvdr:~# echo "0003-10-20 99:00:00" > /proc/acpi/alarm
    linvdr:~# cat /proc/acpi/alarm
    0003-10-19 **:00:00
    linvdr:~#


    nach dem Ausschalten per FB und wieder Einschalten:


    linvdr:~# cat /proc/acpi/alarm
    0003-10-19 01:00:00
    linvdr:~#


    Jetzt programmiere ich einen Timer für morgen, nach dem Ausschalten:
    linvdr:~# cat /proc/acpi/alarm
    0003-10-19 10:55:55


    (das ist kein Witz: habe wirklich für den 20. eine Aufnahme eingestellt)


    ... lösche ihn wieder, nach dem Ausschalten:
    linvdr:~# cat /proc/acpi/alarm
    0003-10-19 01:00:00


    Jetzt probiere ich nochmal ff:
    echo "0003-10-20 99:00:00" > /proc/acpi/alarm
    linvdr:~# cat /proc/acpi/alarm
    0003-10-19 **:00:00


    Nach dem Ausschalten:
    linvdr:~# cat /proc/acpi/alarm
    0003-10-19 01:00:00


    Ich probiere mal, die Zeit umzustellen:


    linvdr:~# echo "0003-10-20 99:00:00" > /proc/acpi/alarm
    linvdr:~# cat /proc/acpi/alarm
    0003-10-19 **:00:00
    linvdr:~# date -s 10200045
    Mon Oct 20 00:45:00 CEST 2003
    linvdr:~# hwclock -w
    linvdr:~# hwclock
    Mon Oct 20 00:45:56 2003 0.000000 seconds
    linvdr:~# cat /proc/acpi/alarm
    0003-10-20 **:00:00


    Nach dem Ausschalten:


    linvdr:~# cat /proc/acpi/alarm
    0003-10-20 01:00:00


    Ich könnte also theoretisch, die poweroff.pl wie
    folgt ändern:
    ...
    if($next =~ /550 No active timers/) {
    system("echo 0003-10-20 20:00:00 > /proc/acpi/alarm");
    PowerOff();
    } elsif($next =~ /250 \d+ (\d+)/) {
    setAlarm($1);


    wobei das Datum ja egal zu sein scheint, er nimmt immer das
    aktuelle bei der Anzeige. Irgendwie blöd. Das heisst ja, dass
    ich bei Timern immer sicherstellen muss, dass der Rechner
    einmal am Tag angeht, damit auch Timer funktionieren, die erst einige Tage
    später anstehen?


    Ok, noch ein Test:


    Habe Rechner mit "busybox poweroff" "kurz vor 1" runtergefahren,
    Danach:
    Mon Oct 20 01:05:47 CEST 2003
    linvdr:~# cat /proc/acpi/alarm
    0003-10-20 **:00:00
    linvdr:~#


    Ha! Also liegt's irgendwie an der poweroff.pl, richtig?
    linvdr:~# echo "9999-99-99 99:00:00" > /proc/acpi/alarm
    linvdr:~# cat /proc/acpi/alarm
    0003-10-20 **:00:00
    linvdr:~# date
    Mon Oct 20 00:51:09 CEST 2003
    linvdr:~# date -s 10200055
    Mon Oct 20 00:55:00 CEST 2003
    linvdr:~# hwclock -w
    linvdr:~#
    linvdr:~# hwclock
    Mon Oct 20 00:55:08 2003 0.000000 seconds
    linvdr:~# date
    Mon Oct 20 00:55:10 CEST 2003
    linvdr:~# cat /proc/acpi/alarm
    0003-10-20 **:00:00
    linvdr:~# busybox poweroff


    Ok, ist nicht angegangen ... Aber wie muss ich die poweroff.pl
    ändern, damit das klappt?


    Falko

    M787CLR (VIA C3 666MHz) RAM 256MB HD IBM 120GB DVB-s Nexus 2.1 LCD 20x4 LinVDR 0.7 Cody-1.3.34-Tarandor Gehäuse
    Zotac IONITX-F-E, 320GB HDD, 2GB Ram, TT connect S2-3600; MLD 5.4 :cool1

    Mehrere MiniDVBlinux auf Raspi 2/3/3+ mit Sundtek Ultimate V im Netz

    Einmal editiert, zuletzt von lulatsch ()

  • Zitat

    Original von lulatsch
    wobei das Datum ja egal zu sein scheint, er nimmt immer das
    aktuelle bei der Anzeige. Irgendwie blöd. Das heisst ja, dass
    ich bei Timern immer sicherstellen muss, dass der Rechner


    Das wird er durch den mechanismus sowieso. Das setzen des Tages unterstützen nicht alle Mainboard, und der Kernel per /proc/acpi/alarm zur Zeit gar nicht.


    Zitat


    die poweroff.pl
    ändern, damit das klappt?


    Probier mal die im Anhang.


    Tom.

  • Danke, sieht gut aus. Werd's mal die nächsten Tage beobachten.


    Falko

    M787CLR (VIA C3 666MHz) RAM 256MB HD IBM 120GB DVB-s Nexus 2.1 LCD 20x4 LinVDR 0.7 Cody-1.3.34-Tarandor Gehäuse
    Zotac IONITX-F-E, 320GB HDD, 2GB Ram, TT connect S2-3600; MLD 5.4 :cool1

    Mehrere MiniDVBlinux auf Raspi 2/3/3+ mit Sundtek Ultimate V im Netz

  • mottobug
    Jetzt versteh ich auch warum mein VDR-Rechner Morgens immer läuft. Ich hatte ein einzigesmal ausprobiert ob der Trick mit der /proc/acpi/alarm -Datei funktioniert (das tat er auch).


    Zitat


    Das wird er durch den mechanismus sowieso. Das setzen des Tages unterstützen nicht alle Mainboard, und der Kernel per /proc/acpi/alarm zur Zeit gar nicht.


    Na super!!! Wenn es schon von Kernel her nicht funktioniert frag ich mich echt warum man dann den Tag einstellen kann. Ob das so ein Riesenaufwand gewesen wäre wenn die das Tages-Datum im Kernel auch noch unterstützt hätten :rolleyes: Das wäre dann wenigstens konsequent. So was halbgares gibts doch sonst nur bei Windows :§$%


    Also wenn das Einstellen des Datums auf absehbare Zeit nicht funktioniert bzw. im Kernel nicht implementiert wird dann benötigt der VDR ja ein richtig intelligenten Shutdown- und Wakeup-Algorithmus.
    Ich hab dein Poweroff.pl noch nicht probiert, werde es aber spätestens heut abend mal tun.
    Da das mit dem Datum nicht funktioniert müsste VDR ja einmal am Tag automatisch hochfahren. Das geschieht am einfachsten um Mitternacht sonst muss man einen virtuellen Tageswechsel im Algo berücksichtigen. Wenn der Wakeup um Mitternacht automatisch geschah sollte der VDR automatisch sofort wieder runtergefahren werden wenn keine Aufnahme in den nächsten X Minuten anfällt und der nächste Mitternachts-Wakup gesetzt wurde. Das (automatisches Shutdown) sollte VDR auch tun wenn eine Timer-Aufnahme gemacht wurde und währenddessen keine Taste gedrückt wurde (= das sind Aufnahmen im Urlaub, Nachts etc. also wenn man nicht gerade einen anderen Kanal schaut und dafür eine Taste betätigt hat)
    Dann sollte für einen wirklich zuverlässigen Algorithmus auch noch berücksichtigt werden, dass man eine kleine Zeitspanne für Shutdown und Wakeup benötigt (~1 Minute zusammen). Wenn man zufälligerweise seinen VDR gerade dann abschaltet wenn eine Aufnahme in der nächsten Minute ansteht dann kann es vorkommen, dass der VDR seinen Wakeup-Zeitpunkt um Sekunden verpasst und deshalb die Aufnahme nicht stattfindet. Für einen Videorekorder nicht gerade die feine Art! Die Wahrscheinlichkeit für solche Fälle ist umso häufiger auf je mehr tägliche Timer man programmiert hat.
    Da gibts bestimmt noch mehr merkwürdige Konstrukte die man berücksichtigen muss. Einige Sachen werden vom VDR behandelt, andere kann man durch ein Shutdown-Skript erledigen.
    Da das Aufnehmen von Sendungen immernoch die Hauptanwendung von VDR ist, sollte man viel Hirnschmalz in die Shutdown/Wakeup-Strategie stecken. Nicht jeder lässt seinen VDR Tag und Nacht durchlaufen nur um zweimal am Tag ne Serie aufzunehmen. Dafür sind die Energiekosten einfach zu hoch (<-bitte nicht drüber streiten, ich weiss es gibt noch andere Argumente pro/kontra).


    Gruß
    Jarny


    PS: Die Gesamtproblematik lässt sich leider nicht durch ein intelligentes Plugin bzw. Shutdown-Skript lösen. Für eine 100%-Lösung muss man bestimmt am VDR-Code Änderungen vornehmen.

    MLD 3.0.3 Server. Aufnahmen schaue ich mit einem separaten XBMC (OpenElec Distribution) im Wohnzimmer am 47 Zoll HD Fernseher

  • Zitat

    Original von jarny
    Na super!!! Wenn es schon von Kernel her nicht funktioniert frag ich mich echt warum man dann den Tag einstellen kann. Ob das so ein Riesenaufwand gewesen wäre wenn die das Tages-Datum im Kernel auch noch unterstützt hätten :rolleyes: Das wäre dann wenigstens konsequent. So was halbgares gibts doch sonst nur bei Windows :§$%


    Wie gesagt, viele Biose können das nicht. Da kann der Kernel nix machen.


    Zitat


    Also wenn das Einstellen des Datums auf absehbare Zeit nicht funktioniert bzw. im Kernel nicht implementiert wird dann benötigt der VDR ja ein richtig intelligenten Shutdown- und Wakeup-Algorithmus.


    VDR hat bereits alles was dazu nötig ist.


    Angenommen VDR hat einen Timer in drei Tagen. Wenn mit mit MinUserInactivity und MinEventTimeout gearbeitet wird schaltet sich der Rechner zwar zwei Tage lang zu der vermeintlichen Uhrzeit ein, schaltet sich aber nach ein paar Minuten auch wieder aus.


    Von daher ist es zwar ärgerlich, aber immerhin besser als gar nix. PCs sind vom Konzept her eben keine Set-Top boxen.


    Zitat


    geschah sollte der VDR automatisch sofort wieder runtergefahren werden wenn keine Aufnahme in den nächsten X Minuten anfällt und der nächste Mitternachts-Wakup gesetzt wurde. Das (automatisches Shutdown) sollte VDR auch tun wenn eine Timer-Aufnahme gemacht wurde und währenddessen keine Taste gedrückt wurde (= das sind Aufnahmen im Urlaub, Nachts etc. also wenn man nicht gerade einen anderen Kanal schaut und dafür eine Taste betätigt hat)


    Siehe Oben, das kann VDR bereits.


    Zitat


    Dann sollte für einen wirklich zuverlässigen Algorithmus auch noch berücksichtigt werden, dass man eine kleine Zeitspanne für Shutdown und Wakeup benötigt (~1 Minute zusammen). Wenn man zufälligerweise seinen VDR gerade dann abschaltet wenn eine Aufnahme in der nächsten Minute ansteht dann kann es vorkommen, dass der VDR seinen Wakeup-Zeitpunkt um Sekunden verpasst und deshalb die Aufnahme nicht stattfindet. Für einen Videorekorder nicht gerade die feine Art! Die Wahrscheinlichkeit für solche Fälle ist umso häufiger auf je mehr tägliche Timer man programmiert hat.


    Auch dafür hat VDR eine Lösung, er warnt wenn ein Timer innerhalb der nächsten MinEventTimeout Minuten liegt per OSD und fragt ob du wirklich auschalten willst.


    Tom.

  • Hi Mottobug


    Zitat


    Wie gesagt, viele Biose können das nicht. Da kann der Kernel nix machen.


    Hab ich schon verstanden. Die Biose die es könnten müssen aber deshalb nicht auch darauf verzichten! Naja! Kann man wohl nix machen. Irgendwas ist ja immer!


    Zitat


    Angenommen VDR hat einen Timer in drei Tagen. Wenn mit mit MinUserInactivity und MinEventTimeout gearbeitet wird schaltet sich der Rechner zwar zwei Tage lang zu der vermeintlichen Uhrzeit ein, schaltet sich aber nach ein paar Minuten auch wieder aus.


    Ist das der gleiche Wert (MinUserInactivity) wie für den Fall dass ich ganz normal ein Film schaue und dabei keine Taste betätige (wozu auch)? Dann ist er aber für ein AutoShutDown nach einem AutoWakeup ungeeignet. Während eines 2 Stundenfilms (oder noch länger Radiohören) drück ich normalerweise keine Taste. Das bedeutet, dass ich da wahrscheinlich so 3 oder 4 Stunden einstellen würde. Für diese Zeit läuft der Rechner dann auch Nachts durch. Da liegt ein Fehler im Konzept vor, weil der VDR wohl nicht erkennen kann warum er gestartet wurde! Bei einem AutoWakeup um Mitternacht könnte er sich nach ner Minute eigentlich wieder abschalten.


    Zitat


    Auch dafür hat VDR eine Lösung, er warnt wenn ein Timer innerhalb der nächsten MinEventTimeout Minuten liegt per OSD und fragt ob du wirklich auschalten willst.


    Ja, hab ich gesehen. Verhindert das Skript auch wenn man ihn per VDRAdmin abschalten will oder wenn man den Powerbutton am Rechner kurz drückt? - Habs gerade probiert (kurzes Drücken der Powertaste am Rechner) es funzt nicht, also das Abschalten wird nicht verhindert!! Schade, da wird wohl der Shutdown anders initiiert als mit der Fernbedienung über VDR, so dass laufende Anwendungen den Shutdown nicht verhindern können. Keine Ahnung, ob man das irgendwo bei Linux beeinflussen kann! Wenns jemand weiss bitte posten :) . Kann es sein, dass in einem sollchen Fall die Wakeup-Programmierung auch nicht durchgeführt wird?


    Zitat


    PCs sind vom Konzept her eben keine Set-Top boxen.


    Also mit dem minütlichen kurzen Einschalten um Mitternacht (für die eventuelle Timerprogrammierung) könnt ich leben. Aber dazu fehlt halt die Erkennung des Wakeup-Grundes.
    Vielleicht hat dazu ja jemand irgend ne zündende Idee! ;D


    Gruß
    Jarny

    MLD 3.0.3 Server. Aufnahmen schaue ich mit einem separaten XBMC (OpenElec Distribution) im Wohnzimmer am 47 Zoll HD Fernseher

  • Hallo...!
    Irgendwie sehe ich bei der 0.3 nicht mehr durch ...


    giebt zwar inzw. ein par interressante plugins


    aber auschalten ging erst nur nachdem ich im bios acpi abgeschaltet habe .
    und nun friert der vdr ein nachdem selbstständigen auschschalten nach 120min
    genauso ähnlich wie über die fernbedienung .....


    osd-teletext und mc konnte ich wohl einbauen....


    mit den änderungsvorschlägen hier zu poweroff
    komme ich auch nicht klar :doof


    jürgen :moin

  • Moin,


    ich lese jetzt hier schon ein paar Tage mit und habe auch ein Problem mit dem ACPI.
    Ich habe LinVDR auf einem Asrock K7VT4 installiert und das Bios ist immerhin in der Lage den ganzen Alarmtimer korrekt auszuwerten, denn wenn ich im Bios eine Alarmzeit einstelle, dann wacht der Rechner korrekt auf.


    Jetzt kommts aber, wenn ich echo "0003-10-20 99:00:00" > /proc/acpi/alarm an der Konsole dann geht die Kiste in die Knie, und nichts geht mehr. Ich habe zwar noch ein Bild auf dem Monitor (FBTV) aber alles andere ist hin, um die Kiste wieder zum laufen zu bekommen, muss ich dann einen Reset durchführen.


    Offenbar ist das aber auch das Problem von vdr. Das Bios hat zwar ACPI-Unterstützung, aber die Einstellmöglichkeiten sind echt minimal.


    Was kann das also sein?


    Gruss,
    Budy


    c't VDR 6.0


    • Asrock K7VT4, Athlon XP 3300+, 1 GB Ram, 2 x TT FF 1.3 mit Spannungs-Mod II

    • Debian/Etch mit eigenem no-DMA Kernel

    • außer CPU- und Netzteil-Lüfter keine drehenden Teile - bootet von CF-Card in unter 35 Sek.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!