Nach Installation nvram-wakeup kein vdrshutdown mehr

  • Hallo,
    es ist wieder ein Problem aufgetaucht und auch nach durchsuchen des Portals fand ich keine Lösung.
    Mein VDR lies sich vor der Installation von nvram-wakeup schön per Powertaste der FB herunterfahren. Nun habe ich mit Hilfe des Portals hier auch nvram-wakeup für mein A7V installiert. Ein Mitglied sagte mir, ich solle den Parameter --iwname=asus_cuv4xe an den Aufruf von nvram-wakeup in der vdrshutdon hängen und in der runvdr den Pfad zu vdrshutdown an die Option -s übergeben. Beides ist getan.
    Nun drücke ich die Powertaste und kurz erscheint der gelbe Streifen (zum abbrechen..) im Bild und auf dem LCD und danach kommt gleich wieder das Bild. Auch nach warten von 300sec passiert nichts. Rufe ich vdrshutdown per Konsole unter /usr/local/bin auf, so sagt er mir:
    ./vdrshutdown: line 4: --iwname=asus_cuv4xe: command not found
    ./vdrshutdon: line 46: -ls: command not found


    Dabei lieferte mir beim installieren doch gerade die Option --iwname=asus_cuv4xe für mein Asus A7V die lang ersehnten Angaben zu rtc aus dem Bios.
    Was kann ich machen? Wo ist der Fehler? Die vdrshutdown ist Original die aus der nvram-wakeup, die ich nach Hubertus installiert habe. Nur die Option --iwname_asus_cuv4xe habe ich eingefügt.
    Danke an Euch schon mal für Tipps...
    Grüße
    galaxis2000

  • Zitat

    Originally posted by galaxis2000
    Nur die Option --iwname_asus_cuv4xe habe ich eingefügt.


    hi,
    du hast wohl eine fehler beim ändern des scripts gemacht. ich denke mal das hiwe war mit anführungszeichen&co nicht stimmt.
    was genau das ist kann ich nicht sagen. falls du das problem nicht selbst findest kannst du das script ja mal hier posten.

  • Hi,
    hier ist das Script:


    #!/bin/bash
    # $Id: vdrshutdown,v 1.15 2003/08/06 12:55:44 bistr-o-math Exp $


    NVRAMCMD=/usr/local/bin/nvram-wakeup --iwname=asus_cuv4xe
    SVDRPCMD=/usr/local/src/VDR/svdrpsend.pl
    CHECKSCRIPT=/path/to/the/script


    #################
    ## if the script $CHECKSCRIPT thinks that we should shutdown,
    ## it must not pint anything on stdout.
    ## if it thinks that we should NOT shutdown,
    ## it must pint a one-line message on stdout.
    ##
    ## note that all parameters passed to vdrshutdown will also be passed to $CHECKSCRIPT
    ## so it might use them (e.g. $5 -eq 0 below)
    ##
    ## it might look like this:
    ## --------------------------
    ## #!/bin/bash
    ##
    ## pgrep 2divx && { echo Divx-Conversion is still running; exit; }
    ##
    ## test -a /some/file && { echo /some/file exists; exit; }
    ##
    ## USERCOUNT=`who --count | grep users= | cut -f 2 -d "="`;
    ## test $5 -eq 0 -a $USERCOUNT -gt 0 && { echo "$USERCOUNT users are logged in."; exit; }
    ##
    ## --------------------------
    ##
    ## now if $CHECKSCRIPT exists and is executable, the message will be passed through
    ## SVDRP to the tv screen.
    ##


    test -x $CHECKSCRIPT && {
    msg=`$CHECKSCRIPT $*`
    test "$msg" != "" && {
    $SVDRPCMD MESG $msg &
    exit 1
    }
    }


    #################


    # Add here needed options like --configfile=...
    # (read man nvram-wakeup and man nvram-wakeup.conf for more details)
    $NVRAMCMD -ls $1


    case $PIPESTATUS in
    0) # all went ok - new date and time set


    /sbin/shutdown -h now


    EXITSTATUS=0
    ;;
    1) # all went ok - new date and time set.
    #
    # *** but we need to reboot. ***
    #
    # for some boards this is needed after every change.
    #
    # for some other boards, we only need this after changing the
    # status flag, i.e. from enabled to disabled or the other way.



    # For plan A - (Plan A is not supported anymore---see README)
    #
    # For plan B - (don't forget to install the modified kernel image first)
    #


    /sbin/lilo -R PowerOff


    /sbin/shutdown -r now
    EXITSTATUS=0
    ;;
    2) # something went wrong
    # don't do anything - just exit with status 1
    EXITSTATUS=1
    ;;
    esac


    # exit with 0 if everything went ok.
    # exit with 1 if something went wrong.
    exit $EXITSTATUS




    Was stimmt daran nicht? Warum nimmt er die Option --iwname=asus_cuv4xe hinter nvram-wakeup nicht? Weshalb meckert er in Zeile 46 bei $NVRAMCMD -ls $1 das "-ls" an? Das war doch Original so drin.


    Wer kann helfen?


    Viele Grüße
    galaxis2000

  • hier muss es weg:

    Code
    ...
    NVRAMCMD=/usr/local/bin/nvram-wakeup --iwname=asus_cuv4xe
    ...



    und hier dran:

    Code
    # Add here needed options like --configfile=...
    # (read man nvram-wakeup and man nvram-wakeup.conf for more details)
    $NVRAMCMD -ls $1
    ...


    also so:

    Code
    ...
    NVRAMCMD=/usr/local/bin/nvram-wakeup 
    ...
    $NVRAMCMD -ls $1 --iwname=asus_cuv4xe
    ...
  • Zitat

    Originally posted by galaxis2000
    Warum nimmt er die Option --iwname=asus_cuv4xe hinter nvram-wakeup nicht? Weshalb meckert er in Zeile 46 bei $NVRAMCMD -ls $1 das "-ls" an? Das war doch Original so drin.


    die bash rafft nicht das das in zeile 4 alles ein string sein soll. du müsstest da noch anführungszeichen hinzufügen. deswegen wird die ganze zeile nicht interpretiert.
    das ist auch der grund warum dann in line46 gemecker wird: die variable NVRAMCMD ist unbekannt.

  • Wenn ich Euch nicht hätte...das war`s gewesen. Jetzt funktioniert das auch alles mit dem Shutdown.
    Nur ich habe dabei jetzt nur noch ein Problem: Die von nvram-wakeup eingetragene Uhr zeit im Bios des A7V ist eine Stunde zu früh.
    Im Bios habe ich die originale MEZ von Berlin drin, mit Yast habe ich Suse 8.2 gesagt, das es ebenfalls MEZ in Europa ist und die Systemzeit im VDR wird mit dem ARD-Transponder abgeglichen. Wo kann sich der Fehler eingeschlichen haben?
    Erst einmal aber noch recht vielen Dank für Eure Hilfe, es hat mir sehr viel Kopfzerbrechen erspart!


    Viele Grüße
    galaxis2000

  • Zitat

    Original von galaxis2000
    Die von nvram-wakeup eingetragene Uhr zeit im Bios des A7V ist eine Stunde zu früh.
    Im Bios habe ich die originale MEZ von Berlin drin, mit Yast habe ich Suse 8.2 gesagt, das es ebenfalls MEZ in Europa ist und die Systemzeit im VDR wird mit dem ARD-Transponder abgeglichen. Wo kann sich der Fehler eingeschlichen haben?


    nvram-wakeup erkennt automatisch, ob die BIOS-Uhr lokalzeil laeuft oder UTC.
    lass mal nvram-wakeup --debug laufen. Was sagt es, was du fuer eine Zeit hast?


    also sowas in der art:

    Code
    nvram-wakeup: Hardware clock: 2003-12-17 01:49:10
    nvram-wakeup: rtc.tm_isdst : 0
    nvram-wakeup: rtc.tm_gmtoff: 3600
    nvram-wakeup: diff         : 3460
    nvram-wakeup: RTC is running in UTC/GMT!
    nvram-wakeup: Test (this should be the current time of the hardware clock): Wed Dec 17 01:46:50 2003


    wie man hier sieht, laeuft meine BIOS-Uhr ein paar Minuten daneben. Unterschiede von bis zu 5 minuten werden toleriert.

  • Hallo Bistr-O-Math,


    hier erst einmal die Ausgabe von nvram-wakeup --debug:


    nvram-wakeup: Printing debug messages enbled.
    nvram-wakeup: $ld: nvram-wakeup.h,v 1.26 2003/08/07 17:14:40 bistr-o-math Exp $
    nvram-wakeup: $ld: nvram-wakeup-mb.h,v 1.115 2003/03/18 13:44:04 bistr-o-math Exp $
    nvram-wakeup: $ld: nvram-wakeup.c,v 1.60 2003/08/06 13:46:32 bistr-o-math Exp $
    nvram-wakeup: Opening /dev/mem in O_RDONLY mode...
    nvram-wakeup: _DMI_table found: base: 0xF2940, size: 0x55F, count: 49
    nvram-wakeup: Following DMI entries found:
    nvram-wakeup: - Mainboard vendor: AUSTeK Computer INC.
    nvram-wakeup: - Mainboard type: <A7V>
    nvram-wakeup: - Mainboard revision: REV 1.xx
    nvram-wakeup: - BIOS vendor: Award Software, Inc.
    nvram-wakeup: - BIOS version: ASUS A7V ACPI BIOS Revision 1011
    nvram-wakeup: - BIOS release: 04/23/2002
    nvram-wakeup: Your Mainboard is currently not supported.
    nvram-wakeup: Please try determining the addresses ans sending the following
    nvram-wakeup: information back to the maintainers:
    nvram-wakeup: - The addresses you found out (read README.mb)
    nvram-wakeup: - Mainboard vendor: AUSTeK Computer INC.
    nvram-wakeup: - Mainboard type: <A7V>
    nvram-wakeup: - Mainboard revision: REV 1.xx
    nvram-wakeup: - BIOS vendor: Award Software, Inc.
    nvram-wakeup: - BIOS version: ASUS A7V ACPI BIOS Revision 1011
    nvram-wakeup: - BIOS release: 04/23/2002


    und hier die Ausgabe von ./biosinfo:


    Mainboard:
    Vendor: ASUSTeK Computer INC.
    Typ: <A7V>
    Version: REV 1.xx
    BIOS:
    Vendor: Award Software, Inc.
    Version: ASUS A7V ACPI BIOS Revision 1011
    Release: 04/23/2002


    Da ist ja nun gar nichts von irgend einer Zeit zu finden. Was kann ich da machen? Muß eventuell irgend etwas in irgend einer config-Datei eingestellt werden?
    Danke schon mal für die beispielhafte Unterstützung!


    Viele Grüße
    galaxis2000

  • Hallo Bistr-O-Math,


    was ist denn eine CVS-Version und wie nutze und installiere ich die denn?
    Trotzdem werde ich die mal die Ausgabe von nvram-wakeup --iwname=asus_cuv4xe --debug hier posten. Doch eventuell komme ich erst heute Nachmittag/Abend dazu.
    Danke dir schon mal für alles bis jetzt!


    Gruß
    galaxis2000

  • Hallo Bistr-O-Math,


    nun hier endlich die Ausgabe von nvram-wakeup --iwname=asus_cuv4xe --debug:


    nvram-wakeup: Printing debug messages enbled.
    nvram-wakeup: $ld: nvram-wakeup.h,v 1.26 2003/08/07 17:14:40 bistr-o-math Exp $
    nvram-wakeup: $ld: nvram-wakeup-mb.h,v 1.115 2003/03/18 13:44:04 bistr-o-math Exp $
    nvram-wakeup: $ld: nvram-wakeup.c,v 1.60 2003/08/06 13:46:32 bistr-o-math Exp $
    nvram-wakeup: Using following bios info:
    nvram-wakeup: need_reboot = 0
    nvram-wakeup: addr_chk_h = 0x6C
    nvram-wakeup: addr_chk_l = 0x6D
    nvram-wakeup: addr_chk_h2 = 0x00
    nvram-wakeup: addr_chk_l2 = 0x00
    nvram-wakeup: addr_stat = 0x56
    nvram-wakeup: addr_mon = 0x00
    nvram-wakeup: addr_date = 0x00
    nvram-wakeup: addr_wdays = 0x00
    nvram-wakeup: addr_hour = 0x00
    nvram-wakeup: addr_min = 0x00
    nvram-wakeup: addr_sec = 0x00
    nvram-wakeup: shift_stat = 4
    nvram-wakeup: shift_mon = 0
    nvram-wakeup: shift_date = 0
    nvram-wakeup: shift_wdays = 0
    nvram-wakeup: shift_hour = 0
    nvram-wakeup: shift_min = 0
    nvram-wakeup: shift_sec = 0
    nvram-wakeup: rtc_time = 1
    nvram-wakeup: rtc_date = 0x6F
    nvram-wakeup: rtc_mon = 0x00
    nvram-wakeup: rtc_date_0_is_c0 = 0
    nvram-wakeup: rtc_mon_0_is_c0 = 0
    nvram-wakeup: reset_date = 1
    nvram-wakeup: reset_mon = 0
    nvram-wakeup: nr_stat = 1
    nvram-wakeup: nr_mon = 4
    nvram-wakeup: nr_date = 5
    nvram-wakeup: nr_hour = 5
    nvram-wakeup: nr_min = 6
    nvram-wakeup: nr_sec = 6
    nvram-wakeup: nr_rtc_date = 6
    nvram-wakeup: nr_rtc_mon = 5
    nvram-wakeup: nr_wdays = 7
    nvram-wakeup: bcd = 0
    nvram-wakeup: date_no_chk = 0
    nvram-wakeup: date_hack = 0
    nvram-wakeup: Opening /dev/rtc in =_RDONLY mode...
    nvram-wakeup: Hardware clock: 2003-12-19 10:55:43
    nvram-wakeup: rtc.tm_isdst : 0
    nvram-wakeup: rtc.tm_gmtoff : 3600
    nvram-wakeup: diff : 3600
    nvram-wakeup: RTC is running in UTC/GMT!
    nvram-wakeup: Test (this should be the current time of the hardware clock): Fri Dec 19 10:55:43 2003
    nvram-wakeup: Opening /dev/nvram in O_RDONLY mode...
    nvram-wakeup: The size of /dev/nvram is 114 bytes.
    nvram-wakeup: value of the addr_stat byte is : 0x01.
    nvram-wakeup: value of the rtc_date byte is : 0x00.
    nvram-wakeup: value of the addr_chk_h byte is : 0x07.
    nvram-wakeup: value of the addr_chk_l byte is : 0x11.
    nvram-wakeup: Opening /dev/rtc in O_RDONLY mode...
    nvram-wakeup: Checksum is : 0x0711.


    All values are displayed as they are stored in the nvram/rtc.
    (and do not correspond necessarily to the system date/time)


    WakeUp : Disabled (0x01)
    rtcDate : 0 (0x00)
    rtcHour : 22
    rtcMin : 57
    rtcSec : 0
    Checksum : 0x0711


    Wo habe ich in meiner Konfiguration den Fehler, das ins Bios bei nvram-wakeup immer eine Stunde eher eingetragen wird? Im letzten Abschnitt hier sieht man zum Beispiel die Zeit 22:57 Uhr, aufnehmen wollte ich aber von 0:02 bis 0:05 Uhr (zum testen). Da müßte dann doch 23:57 Uhr eingetragen werden, oder?


    Wäre nett Mistr-O-Math, wenn du mir bei diesem Fehler helfen könntest. Ich Danke dir für all deine Mühe schon einmal sehr!


    Viele Grüße
    galaxis2000

  • hi,
    in der tat stehst du hier vor einem kniffeligen problem:
    bios-uhr (hardwarezeit, rtc), systemzeit und vdr-zeit sind nicht immer das selbe.
    eigentlich sollte man die systemzeit auf GMT laufen lassen und dann nur mit der lokal-zeit arbeiten. leider fürt das öfters zu problemen.


    ich löse das ganze indem ich rtc, system und vdr alle auf die lokale zeit syncronisiere. dazu stelle ich im vdr ein "Systemzeit syncronisieren" und sorge über ein script noch dafür das die systemzeit auch mit der hardware syncronisiert wird ("hwclock --systohc"). das ist zwar nicht sauber, klappt aber :)


    ein workaround für dich wäre in dem shutdown-script zu der zeit (in epochensekunden) noch einfach 3600 zu addieren. also in etwa so:

    Code
    ...
    NVRAMCMD=/usr/local/bin/nvram-wakeup 
    ...
    $NVRAMCMD -ls $(($1-3600)) --iwname=asus_cuv4xe
    ...


    ich bin mir jetzt nicht sicher ob die syntax für diese rechenoperation stimmt. nachlesen wie das geht kann man mit "man bash"


  • vielleicht gibt es gar keinen Fehler. Wenn deine Uhr auf GMT/UTC laeuft,
    dann ist diese um eine Stunde eher als die "Wand-Uhr" zeigen wuerde.
    Wenn du ins BIOS gehst, und dir dort die Uhrzeit anschaust, dann ist sie um
    eine Stunde versetzt. um 23:57 zeigt die BIOS-Uhr 22:57 und der
    Rechner wacht genau zu diesem Zeitpunkt auf, um 5 minuten spaeter aufzunehmen.

  • Hallo,


    ja es stimmt mit der Uhr im Bios. Sie ist nun eine Stunde zurück versetzt.


    Dann habe ich einen Test gemacht, er sprang auch zur richtigen Zeit fünf Minuten vor Timerbeginn an. Nur - er blieb "bei Setting up the CMOS clock" beim booten einfach stehen (sah ich auf der Konsole). Was soll das jetzt bedeuten? Bis hier hin bin ich mit Eurer Hilfe gekommen und nun sowas! Was will er da setten an der CMOS-Uhr und warum verdammt bleibt er stehen? Hat das was mit nvram-wakeup zu tun?


    Auf Hilfe hoffent...


    Gruß
    galaxis2000

  • Zitat

    Original von galaxis2000
    ... Nur - er blieb "bei Setting up the CMOS clock" beim booten einfach stehen (sah ich auf der Konsole). ... Hat das was mit nvram-wakeup zu tun?


    nein. mit nvram-wakeup hat das nichts zu tun. zumindest nicht direkt. hier ein Auszug
    aus der README von nvram-wakeup:

    Code
    9. NOTE:  on  some  boards  (Asus AV7-133,  AV7-266,  TUV4X, ...) the
       program  hwclock isn't able to use the rtc device for getting CMOS
       time  if  the  wakeup  is enabled  in  the  BIOS.  Please  use the
       --directisa option of hwclock.


    ich glaube, du kannst weiter booten, wenn du "Strg-C" drueckst. Wenn nicht,
    dann gehst du ins BIOS und schaltest das Wakeup-feature aus, dann bootest du.


    Wenn du unter Linux bist, finde, welches Skript beim booten die Uhr ausliest
    (evtl. sowas wie /etc/init.d/boot oder so aehnlich) finde die Zeile, in der hwclock
    ausgefuehrt wird, und fuege die Option --directisa hinzu


    bei mir waere das z.B. in /etc/init.d/boot und ich wuerde aus

    Code
    echo -n Setting up the CMOS clock
    CLOCKCMD=hwclock

    das machen:

    Code
    echo -n Setting up the CMOS clock
    CLOCKCMD="hwclock --directisa"
  • Hallo Bistr-O-Math,


    entschuldige das ich erst jetzt antworte.
    Bei meiner Suse 8.2 prof fand ich nur Angaben zur Hardwareclock in /etc/init.d/boot.clock:


    ...
    echo -n Setting up the system clock
    ...
    if test "$HWCLOCK" != "-u"; then
    date §(date -u +`%m%d%H%M%Y`)
    rc_status
    fi
    rc_status -v -r
    else
    echo -n Setting up mthe CMOS clock
    test -f /etc/adjtime || echo "0.0.0.0.0" > /etc/adjtime
    /sbin/hwclock --adjtime §HWCLOCK
    rc_status
    /sbin/hwclock --hctosys §HWCLOCK
    rc_status
    rc_status -v -r
    fi
    ...


    Kann man damit etwas anfangen, was muß mich da ändern?
    Merkwürdig ist auch - wenn ich den VDR einige Stunden aus habe, er dann nach dem einschalten über dieses CMOS-Clock-Setting hinwegläuft. Was soll das denn?


    Gerade konnte ich mein "Frauchen" von dem Ersatz von Videorecorder, SAT-Receiver und DVD-Player durch den Linux-VDR überzeugen, da habe ich ihn mir softwaremäßig schon zerschossen.
    Als er bei " Setting up the CMOS clock" hängen blieb, da wusste cih noch nichts von Strg-C und habe viele Tasten gedrückt. Danach kannte er weder den DMA-Modus der HDD noch den VDR. Er wollte immer restarting VDR ausführen. Also habe ich neu den Treiber und den VDR 1.2.6 installiert. Danach natürlich alle Plugins wie VCD, DVD, MP3, MPlayer, LiveAC3, OSDTELETEXT, LIRC und Image neu installiert aber davon laufen nur Lirc, Image und MPlayer. Selbst der LCDproc läuft nicht mehr. Ich habe fast Tränen vergossen!!! Nach Monaten ein fast lauffähiges System, eingebaut in ein altes Pioneer-Referenzverstärkergehäuse A757. Alles passend zum Wohnzimmer und dem Digitalreceiver Onkyo D757! Sogar wohnzimmertauglich (schwingungsgedämmte 2 x 120 GB -HDD 5400upm) eigends entwickeltes Netzteil mit Mainboard A7V, 512MB RAM und AMD Athlon 1400B, der temp geregelt gekühlt (ab ca. 33 Grad) auf 600 Mhz bei ca. 1,2V Core läuft. Mit Cardreader, USB- und Firewire-Schnittstellen and der Front, RGB-Scart- und SPDIF-LiveAC3-Ausgängen an der Rückseite, 2 DVB-s-Karten und CI-Modul. Für die "untechnischen weiblichkeiten ins Wohnzimmer hineinprojektet", und nun dieser Mist. Ich werde alles neu aufsetzen müssen.
    Vorher möchte ich aber die Sache mit dem nvram-wakeup hinbekommen, bitte helft mir beim ändern der "Setting up the CMOS clock"-Hänger!
    Sichern konnte ich wichtige Config-Dateien zum Glück über meinen unter "root" laufenden Samba-Server auf einem meiner WinXP prof PC`s. Aber wie es immer so ist, irgend eine Config-Datei habe ich beim sichern garantiert vergessen...
    Nun - was kann ich an der boot.clock ändern, damit nach einem nvram-wakeup Timerstart der PC beim booten nicht bei dieer CMOS clock stehen bleibt?


    Unbeschreiblichen Dank schon einmal vorab...


    Viele Grüße
    galaxis2000


  • hast du das per Hand abgetippt? das muss wohl ueberall ein $ statt § sein...


    also, einfach in jede Zeile mit /sbin/hwclock noch den Parameter --directisa einhaengen, also etwa

    Code
    /sbin/hwclock --directisa --hctosys $HWCLOCK
  • Hallo!
    Jetzt habe ich endlich meinen VDR komplett neu aufgesetzt. Es funktioniert auch jetzt mit nvram-wakeup wunderbar. In der Datei /etc/init.d/halt musste ich bei meiner Suse 8.2 prof. den Zusatz --directisa hinzufügen.
    Allerdings kämpfe ich nun mit Problemen von AC3...


    Allen die mir hier geholfen haben nochmals besten Dank und ein gesundes und frohes Jahr 2004!


    Viele Grüße
    galaxis2000

Jetzt mitmachen!

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