• Hallo zusammen,


    bin ein ziemlicher Newbie was Shell-Skripte und auch Linux/Unix an sich angeht, aber bin ja dran am Arbeiten.
    Zur Vorgeschichte: Mich hat es immer genervt, dass wenn die Box hängen blieb oder sich mit einem Bluescreen verabschiedet hat (gsd in letzter Zeit eher selten), alle vorher vorhandenen EPG-Infos weg waren! Warum ist klar - der EPG-Cache wird beim Starten von E2 geladen und direkt gelöscht und erst beim "sauberen" beenden von E2 wieder an diese Stelle geschrieben. Ich dachte mir schon immer das es eigentlich ziemlich blöd ist, denn vorausgesetzt die Box läuft nicht mehrere Tage/Wochen am Stück sind diese, wenn auch "alten" EPG-Daten, schon noch zu gebrauchen - und außerdem im Normalfall startet man die Box mindestens täglich und dann sind diese EPG-Daten doch noch ziemlich aktuell.


    Also habe ich ein kleines Skriptchen geschrieben, welches einfach beim Starten von E2 (durch Veränderung der /usr/bin/enigma2.sh) die vorhandene EPG-Datei in eine Backup-Datei kopiert - bei jedem neuen Start wird die Kopie erneuert und ist die eigentliche EPG Datei nicht vorhanden, wird diese wieder durch die Kopie erstellt. So hat man im Falle eines BS oder o.ä. wieder die gleichen EPG-Daten, wie beim letzten erfolgreichen Start. Dachte mir, ich teile das mal mit dem Rest der G2 Gemeinde, falls es denn auch Jemand haben möchte!


    Für Anregungen und Verbesserungen bin ich jederzeit offen! Ein ipk-Installationspaket habe ich noch nicht erstellt, bzw. ich habe mich damit noch nicht beschäftigt - deswegen muss man es vorerst von Hand installieren.
    Es gibt 2 Konfigurationen, je nach dem wo man den EPG-Cache hat. Die 1. ist für CF-Karten und die 2. für HDDs - aber ich denke, das ist auch aus dem Namen ersichtlich.


    Vorm Starten unbedingt die Datei "/usr/bin/enigma2.sh" sichern. Zur Installation das Archiv entpacken, und die Datei "epgSave.sh" je nach Konfiguration ins /media/cf oder /media/hdd Verzeichnis kopieren und die entsprechende "enigma2.sh" nach /usr/bin. Rechte mit chmod 755 setzen nicht vergessen - auch bei der enigma2.sh, falls ihr vorher die vorhandene umbenannt habt! Ich habe nur die CF-Konfiguration getestet, aber ich denke die HDD-Version sollte genauso funktionieren. Wenn nicht, dann bitte Info!


    Bei mir lief das ganze problemlos unter Gemini 3.2 - alle anderen Versionen/Images habe ich nicht getestet - es sollte dann aber IMHO die "/usr/bin/engima2.sh" der Image-Version von Hand bearbeitet werden, da ich nicht weiß, ob diese sich verändert haben...


    LG,


    ub75

  • Dankeschön!!


    Das ist doch mal was feines!!



    mfg

    Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von Ryu's Frau : Heute, 11:25.

    IF YOU LIKE MY WORK, PLEASE BUY ME A CURRYWURST MIT POMMES UND KETCHUP!!

  • Kein Problem! Gern geschehen...


    Eine Alternative zu dem Ganzen wäre natürlich beim Starten von E2 die eigentliche EPG-Cache erst gar nicht zu löschen - verstehe sowieso nicht so ganz, warum das gemacht wird? Hat da Jemand vlt. Infos zu? Wäre ja genauso blöd, wenn z.B. die timers.xml geladen und dann im Flash gelöscht werden würde - und dann erst beim Beenden von E2 wieder zurück geschrieben würde... dann wären bei jedem BS oder so alle Timer weg... zum Glück ist es nicht so :)


    Für Tipps und Infos wäre ich dankbar!


    mfg

  • geht das auch für Enigma1 Boxen? Ist nämlich echt blöd wenn die Kiste abschmiert und das komplette EGP dann fort ist........

  • Würde schätzen, ohne je Enigma1 gesehen zu haben, dass es genauso funktioniert. Das Skript selbst nutzt ja nur rudimentäre Unix Befehle...


    Evtl. heißt die EPG-Datei anders -a ber man muss eigentlich nur das Enigma1 Startskript finden, und das kann ja nicht so schwer sein... evtl. heißt das auch enigma.sh und liegt an derselben Stelle - aber wie gesagt, keine Ahnung wie das bei E1 ist...

  • vielen dank für dein tool :winking_face:

    Box1: 7025+SS 500GB-HDD 4GB-CF 8GB-USBSTICK Gemini im BA Box2: D-Box2 NG²-MC Keywelt Box3: D-Box2 SC8in1 Sportster Box4: 7025SS 400GB-HDD 1GB-CF Gemini im BA

  • @ub7
    Super,endlich verliere ich nicht mehr nach jeden BS meine EPG Daten.

    Achtung! Texte von "blueline" können Spuren von Ironie, Sarkasmus, Denkanstössen und freier Meinungsäusserung enthalten ..
    Es wird keine Garantie auf Textverständnis gewährleistet.

  • Danke Danke!
    Freut mich, dass ich auch mal was für die Allgemeinheit beitragen konnte...!


    Ich muss da nur mal bald so ein ipk-Teil draus basteln... bin aber irgendwie zu faul mich damit zu beschäftigen... :frowning_face:

  • Hi,


    coole Idee, manchmal hat man ja bei der Spielerei einen BlueScreen.


    Ich werde das mal installieren... Vielleicht macht ja mal wer so ein ipk.Teil draus!


    Danke!!!


    Gruß
    Hossi

  • Wäre toll wenn mir jemand helfen könnte das Startscript für Enigma1 Boxen zu finden. Bin da noch nicht weiter gekommen..........


    Gruß!

  • Ich hätte auch Interesse an einer Enigma1 Version, kenne mich damit aber auch nicht aus es selber umzuschreiben.

  • Ich habe jetzt mal versucht das Skript für Enigma 1 umzuändern und es funktioniert im Flash Image wohl ohne Probleme, aber beim Gemini auf dem Stick schreibt es nur die Backup Datei, erstellt aber nach einem Reset aus ihr keine neue EPG Datei.


    Weiss vielleicht einer woran das liegt?

  • Sollte eigentlich genauso funktionieren...
    Hast Du das Skript epgSave.sh unverändert benutzt?


    Oder versuche das Skript mal manuell aus einer Telnet Session aufzurufen - geht auch während enigma läuft... und berichte mal was dann passiert...

  • In der epgSave.sh habe ich nur das Directory auf "/var/mnt/usb/" und den Filename auf "epg.dat" abgeändert.
    Von der enigma2.sh habe ich die Zeile "sh /media/hdd/epgSave.sh" übernommen und in "sh /var/mnt/usb/epgSave.sh" geändert. Diese habe ich dann im Flash Image (aktuelles Boxman) in die Datei "/var/etc/init" eingefügt und dort funktioniert es.
    Anders im Gemini 4.3 auf dem USB Stick, dort fügte ich diese Zeile in die "/var/script/user_mount.sh" und beim Neustart erstellt sie die "epg.dat.bak" Datei, aber bei Reset aus ihr keine neue "epg.dat."


    So ganz falsch kann es also nicht sein.


    Wenn ich nun über Telnet den Befehl "sh /var/mnt/usb/epgSave.sh" aufrufe schreibt er beide Dateien, je nach dem was fehlt. Nur die "epg.dat" übernimmt er wegen der zu späten Erstellung nicht mehr am TV.

  • Denke mal doe Änderungen sind alle soweit korrekt...
    Ich schätze die normale epg datei ist zu schnell im Zugriff durch Engima selbst und das Skript kann sie nicht mehr schreiben... Das Skript funktioniert ja prinzipiell - das zeigt ja zumindest der telnet Test.
    Versuch mal noch eine Pause hinter den Aufruf des Skriptes zu setzen oder aber das Skript ist nicht das Richtige - aber alles nur Vermutung...

  • Ich habe auch schon ein paar andere Scripte probiert, aber ohne Erfolg.
    Wie setzt man denn diese Pause?

  • Bin mir jetzt nicht wirklich sicher wie das bei Linux ist aber ich denke mal das Skript wird erst ganz durchlaufen bevor das "/var/etc/init" weiter läuft - deswegen bringt die Pause nicht wirklich was...


    Ich denke wirklich, das die EPG-Datei bereits im Zugriff ist wenn mein Skript anfängt zu laufen - das würde das Verhalten erklären. Irgendwie muss der Aufruf früher einfach stattfinden... Ich weiß das hilft jetzt nicht wirklich - aber ohne E1 Box kann ich Dir nicht wirklich weiter helfen... Sorry!

  • Ich habe jetzt gemerkt das es im Flash Image auch nicht funktioniert, weil ich festgestellt habe dass das Boxman Image beim Reset und Neustart die vorhandene "epg.dat" garnicht löscht und weiter verwertet.
    Warum ist das blos im Gemini nicht so, das sollten die mal ändern!