Worin liegt der Unterschied, wenn ich meinen VDR durch Drücken der externen Power-Taste herunterfahre, im Verglich zum Shell-Befehl 'busybox poweroff'?
Hintergrund: Wenn ich meinen VDR durch Drücken der externen Power-Taste herunterfahre, wacht er zum via ACPI-Wakeup eingestellten Zeitpunkt wieder auf, bei 'busybox poweroff' nicht. Die Kombi. 'reboot'...'busybox poweroff' habe ich schon durch.
Unterschied zwischen Power-Taste und (busybox) poweroff
- habichthugo
- Geschlossen
-
-
Ich nehme an, Du benutzt LinVDR. Dann (zumindest in der Version 0.5) wird beim Drücken der Powertaste das Perl-Skript poweroff.pl aufgerufen. Wenn man einfach nur "poweroff" eintippt, passiert dasselbe ebenfalls. Denn der Link /sbin/poweroff zeigt auf eben dieses Skript. Und auch wenn man den PC via VDR über die Fernbedienung abschaltet, kommt dieses Skript zum Zuge.
In diesem Skript wird nach dem Setzen der Aufwachzeit übrigens auch 'busybox poweroff' aufgerufen. Wenn Du aber 'busybox poweroff' direkt aufrufst, dann wird eben das Skript nicht abgearbeitet.
In dem Skript wird noch unterschieden, ob es von VDR aus aufgerufen wurde, dann wird nämlich die nächste Aufwachzeit als Parameter mit übergeben. Wenn es von ausserhalb des VDR aufgerufen wurde (also z.B. per Powertaste oder Kommandozeile), dann holt sich das Skript per SVDRP von VDR die Aufwachzeit ab. SVDRP ist ein Netzwerkprotokoll zum Datenaustausch und zur Steuerung des VDR über einen TCP-Port (normalerweise Port 2001).
-
-
Zitat
Original von rwa
In dem Skript wird noch unterschieden, ob es von VDR aus aufgerufen wurde, dann wird nämlich die nächste Aufwachzeit als Parameter mit übergeben. Wenn es von ausserhalb des VDR aufgerufen wurde (also z.B. per Powertaste oder Kommandozeile), dann holt sich das Skript per SVDRP von VDR die Aufwachzeit ab. SVDRP ist ein Netzwerkprotokoll zum Datenaustausch und zur Steuerung des VDR über einen TCP-Port (normalerweise Port 2001).ZitatOriginal von habichthugo
Danke rwa, aber das ist mir alles bekannt!
Mir geht es darum, was passiert, wenn ich die Power-Taste am PC drücke um den VDR herunterzufahren. Dann wacht die Kiste nämlich zum via ACPI eingestellten Zeitpunkt wieder auf, sonst nicht...hab ich da was falsch verstanden ?
-
Ist das denn so schwierig?
1.
#echo <Datum> <Zeit> > /proc/acpi/alarm
#busybox poweroff
-> Rechner wacht nicht mehr auf
2.
#echo <Datum> <Zeit> > /proc/acpi/alarm
+ Powertaste am PC zum herunterfahren drücken
-> Rechner wacht wie gewünscht aufIn beiden Fällen steht nach dem (1. händischen) reboot die richtige Zeit in /proc/acpi/alarm.
Das automatische Aufwachen funktioniert also nur, wenn ich die Power-Taste am PC zum herunterfahren nutze. Nach den obigen Aussagen dürfte da jedoch kein Unterschied zum Poweroff via Shell/Script sein. Es muss aber einen geben!
-
Zitat
Original von rwa
In diesem Skript wird nach dem Setzen der Aufwachzeit übrigens auch 'busybox poweroff' aufgerufen. Wenn Du aber 'busybox poweroff' direkt aufrufst, dann wird eben das Skript nicht abgearbeitet....
-
Zitat
Original von habichthugo
#echo <Datum> <Zeit> > /proc/acpi/alarm
#busybox poweroff
-> Rechner wacht nicht mehr auf
das wäre mir neu ! Wenn die Eingabe mit echo im richtigen Format geschieht, ist das ja das gleiche, was auch das poweroff.pl-Skript machen würde.Was mich aber noch interessieren würde: wo/wie ist bei LinVDR eigentlich hinterlegt, dass beim Drücken der Powertaste am PC das Script poweroff.pl ausgeführt wird?
-
sdu
Und???!!!
Ist doch egal, welches Script nun abgearbeitet wird oder nicht! Fakt ist: 'Händisch' (über die Power-Taste) heruntergefahren wacht der Rechner zum gewünschten Zeitpunkt wieder auf, via Shell/Script (egal ob 'poweroff', 'busybox poweroff' oder 'poweroff.pl') nicht!!!!!
Also: Was passiert beim Drücken der Power-Taste tatsächlich!??? -
Dr. Seltsam
Soweit ich gesehen habe, gibt es einen ACPI-Event (weiß jetzt gerade nicht, wo der im Dateiensystem steht), der mit /sbin/poweroff verknüpft ist. Das allein kanns aber nicht sein, den via Shell/Script mit /sbin/poweroff heruntergefahren, wacht der Rechner nicht mehr auf... -
genau das hatte ich auch gefunden, es muss aber durch irgendwas anderes umgangen werden. Sonst würde das poweroff-script ja nicht ausgeführt.
Unter Suse 9.0 habe ich in der runvdr den vdr-paramter " -s" benutzt, um auf das Script zu verweisen. Nach meiner Erinnerung hatte ich das bei Linvdr 0.6 in der runvdr vergeblich gesucht -vielleicht hatte ich aber auch Matsch auf den Augen.
-
Ich hab den VDR grad nicht greifbar, aber soweit ich weis, wird auch in LinVDR dem vdr das für den Shutdown zu benutzende Skript per Parameter mitgeteilt. Das ist aber nur von Bedeutung, wenn die VDR-Software das Herunterfahren auslöst (z.B. via Fernbedienung). Zusätzlich ist aber, wie schon erwähnt, auch der entspr. ACPI-Event mit dem Skript verknüpft. Das Drücken der Powertaste löst dadurch das Herunterfahren aus, ohne dass die VDR-Software da involviert ist.
-
In Deinem 2.Beispiel:
Zitat
2.
#echo <Datum> <Zeit> > /proc/acpi/alarm
+ Powertaste am PC zum herunterfahren drücken
-> Rechner wacht wie gewünscht aufist das echo-Kommando normalerweise schlicht wirkungslos und überflüssig, da das Skript das nochmal macht. Oder probier' folgendes: Ruf' das echo mit irgendeiner weit weg liegenden Zeit auf und drücke dann die Powertaste. Welche Zeit steht nach dem Wiedereinschalten drin? Hoffentlich die Zeit des Drückens der Powertaste und nicht die manuell eingetragene Zeit.
-
rwa
Ich will ja nicht undankbar ob Deines (Eures) Intresses an meiner Frage erscheinen, aber lies Dir (lest Euch) doch bitte mal etwas genauer durch, was ich bisher geschrieben habe:
#echo <Datum> <Zeit> > /proc/acpi/alarm
#busybox poweroff
-> Rechner wacht nicht mehr auf, händisch neu anwerfen
#cat /proc/acpi/alarm #ergibt <Datum> <Zeit>!Also nochmal:
* Runterfahren mit Power-Taste am Rechner: Rechner wacht selbstständig zum via acpi eingestellten, korrekten Zeitpunkt auf.
* Runterfahren mit 'busybox poweroff': Rechner wacht nie wieder auf! Nach händischem reboot ergibt 'cat /proc/acpi/alarm' weiterhin die gewünsche Aufwachzeit.Also: Wo ist der Unterschied...?
-
poste das ganze mal unter der Rubrik LinVdr dann bekommst du eventuell eine Antwort direkt vom Entwickler ...
-
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!