1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Talk Settings über eigenen Server laden möglich

Dieses Thema im Forum "CS Root & Vserver" wurde erstellt von amassidda, 2. Juli 2013.

  1. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    WICHTIGES UPDATE

    Hallo Leute

    Auf anfrage von Usern habe ich mich ein bisschen bemüht um mein Script etwas Benutzerfreundlicher zu machen.


    "Dies kann man auch weg lassen wenn man den Standardport behalten möchte"
    --------------------------------------------------------------------------------------------
    /etc/apache2/port.conf ändern und sieht folgendermasen aus:

    # If you just change the port or add more ports here, you will likely also
    # have to change the VirtualHost statement in
    # /etc/apache2/sites-enabled/000-default
    # This is also true if you have upgraded from before 2.2.9-3 (i.e. from # Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and # README.Debian.gz

    NameVirtualHost *:port

    Listen Port

    usw. ...


    Dort einfach die beiden "Port" ändern z.B. in 55000

    speichern und dann über Putty das hier ausführen: /etc/init.d/apache2 restart

    ACHTUNG: Euer IPC ist nicht mehr standard errecihbar sprich über IP:80 oder IP/ipc sondern über den neuen Port den wir oben vergeben haben in unserem Fall IP:55000

    ---------------------------------------------------------------------------------------------------


    Dies kann weggelassen werden fals man keine USER PASSWORT abfrage haben möchte!
    ---------------------------------------------------------------------------------------------------


    Wenn man möchte kann man das ganze auch noch Sichern mit einem USER und PASSWORT

    Beim PASSWORT dürfen keine Sonderzeichen wie z.B. : üöä+#,.-;:_'*°^!"§$%&/()=?´`<>{}[]\²³@€|µ
    benutzt werden

    Dazu muss man Folgendes machen:

    Logt euch mit eurem Server über Putty oder älichem ein und führ folgendes aus:

    cd /var/www oder cd /var/www/EUREN ORDNER --> je nach dem ob ihr den Schutz für alles wollt also IPC und Settings oder nur für den Setting Ordner

    aktiviert nun euren Schutz indem ihr folgenden Befehl ausführt:

    nano .htaccess

    und das hier dort eintragen:
    AuthName "Authorization required"
    AuthType Basic
    AuthUserFile /var/htpasswd
    AuthGroupFile /dev/null
    require valid-user

    Die Datei für die USER legt ihr in /var/ an die heist dann: .htpasswd

    Und sieht dann folgendermasen aus: login:passwort-----------------> also USER:passwort

    Durch das anlegen dieser Abfrage wird auch euer IPC Webinterface nach einem USER und PASSWORT fragen bevor ihr zum Webinterface gelangt.

    Ausser ihr erstellt die .htaccess nur in eurem Setting ORDNER.

    -----------------------------------------------------------------------------


    Eure Settings speichert ihr in einem Ordner Namens "enigma2" und packt ihn am besten mit 7zip als .tar speichern

    Nennt jetzt die neue umgewandelte Datei enigma2.tar falls sie nicht schon so heißt

    Erstellt am besten einen neuen Ordner z. B. "Settings" und ladet dort die Datei hinein.

    Jetzt rauf auf den Server unter /var/www/"EUREN ORDNER".

    Dort im Ordner noch eine time.txt erstellen mit dem Datum der letzten Änderung in diesem Format:

    JAHRMONATTAG also so 20130713

    Zum schluss noch das Script in

    /etc/cron/scripts

    mit den Attributen 755 als .sh Datei kopieren-------> könnt ihr nennen wie ihr wollt. Ich habe es Settings.sh gennant

    "Falls der Ordner nicht vorhanden ist kann man ihn erstellen"

    Erstellt eine timelu.txt mit dem Datumsformat: JAHRMONATTAG also so 19700101

    Diese kopiert ihr auf eure Dreambox nach

    /etc/

    Beim TS Image : Blau, Werkzeug, Cronmanager, Blau, (Script) um das Script auszuführen

    Bei New Enigma2 mit dem DreamExplorer ausführen: /etc/cron/script/

    Hier für euch jetzt das Script für Enigma 2 ohne USER PASSWORT abfrage:

    #!/bin/sh
    #BESCHREIBUNG=Herunterladen, Installation & Reload Enigma2 Bouquets
    #Die URL auf eure eigene URL umändern wo das tar file liegt
    BQ="http://DYNDNS:pORT/ORDNER/enigma2.tar"
    BG="enigma2.tar"
    #Die URL auf eure eigene URL umändern wo das tar file liegt
    ST="http://DYNDNS:pORT/ORDNER/time.txt"
    ## Bouquet Download, Prüfung, Installation + Reload ##
    cd /tmp/
    wget $BQ
    wget $ST
    chmod 755 /tmp/enigma2.tar
    chmod 755 /tmp/time.txt

    #Speichern des Inhalts von timelu.txt und time in einer Variablen
    export timelu=$(cat /etc/timelu.txt | head -n1 | tail -n1)
    export timen=$(cat /tmp/time.txt | head -n1 | tail -n1)

    if [ -s $BG ]; then
    echo "Server Online"
    else
    echo "Server Offline, bitte spaeter nochmal versuchen!"
    fi

    #Vergleich: Ist timelu kleiner als timen ?#
    if [ $timelu -lt $timen ];then

    tar -xvf enigma2.tar

    if [ -s /tmp/enigma2 ]; then
    echo "Entpacken erfolgreich"

    echo "Lade Senderliste"

    cd /tmp/enigma2
    mv /tmp/enigma2/satellites.xml /etc/tuxbox/

    cd /etc/enigma2
    rm -rf *.tv
    rm -rf *.radio
    rm -rf blacklist
    rm -rf lamedb
    mv /tmp/enigma2/* /etc/enigma2

    rm -rf /tmp/enigma2
    rm -rf /tmp/enigma2.tar

    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?



    #Speichern der time.txt in timelu.txt
    cd /etc
    rm -rf /etc/timelu.txt
    touch timelu.txt
    echo "$timen" >> /etc/timelu.txt
    rm -rf /tmp/time.txt

    echo "Update erfolgreich abgeschlossen"

    else
    echo "Entpacken fehlgeschlagen, bitte Datei prüfen!"
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma2.tar
    fi

    else
    echo "Senderliste aktuell"
    echo "Kein Update noetig"
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma2.tar
    fi


    Hier für euch jetzt das Script für Enigma 2 mit USER PASSWORT abfrage:


    #!/bin/sh
    #BESCHREIBUNG=Herunterladen, Installation & Reload Enigma2 Bouquets
    #Die URL auf eure eigene URL umändern wo das tar file liegt
    BQ="http://USER:pASSWORT@DYNDNS:pORT/ORDNER/enigma2.tar"
    BG="enigma2.tar"
    #Die URL auf eure eigene URL umändern wo das tar file liegt
    ST="http://USER:pASSWORT@DYNDNS:pORT/ORDNER/time.txt"
    ## Bouquet Download, Prüfung, Installation + Reload ##
    cd /tmp/
    wget $BQ
    wget $ST
    chmod 755 /tmp/enigma2.tar
    chmod 755 /tmp/time.txt

    #Speichern des Inhalts von timelu.txt und time in einer Variablen
    export timelu=$(cat /etc/timelu.txt | head -n1 | tail -n1)
    export timen=$(cat /tmp/time.txt | head -n1 | tail -n1)

    if [ -s $BG ]; then
    echo "Server Online"
    else
    echo "Server Offline, bitte spaeter nochmal versuchen!"
    fi

    #Vergleich: Ist timelu kleiner als timen ?#
    if [ $timelu -lt $timen ];then

    tar -xvf enigma2.tar

    if [ -s /tmp/enigma2 ]; then
    echo "Entpacken erfolgreich"

    echo "Lade Senderliste"

    cd /tmp/enigma2
    mv /tmp/enigma2/satellites.xml /etc/tuxbox/

    cd /etc/enigma2
    rm -rf *.tv
    rm -rf *.radio
    rm -rf blacklist
    rm -rf lamedb
    mv /tmp/enigma2/* /etc/enigma2

    rm -rf /tmp/enigma2
    rm -rf /tmp/enigma2.tar

    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?



    #Speichern der time.txt in timelu.txt
    cd /etc
    rm -rf /etc/timelu.txt
    touch timelu.txt
    echo "$timen" >> /etc/timelu.txt
    rm -rf /tmp/time.txt

    echo "Update erfolgreich abgeschlossen"

    else
    echo "Entpacken fehlgeschlagen, bitte Datei prüfen!"
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma2.tar
    fi

    else
    echo "Senderliste aktuell"
    echo "Kein Update noetig"
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma2.tar
    fi

    Für Enigma 1 muss das ganze wie folgt gemacht werden:

    Eure Settings speichert ihr in einem Ordner Namens "enigma1" und packt ihn am besten mit 7zip als .tar

    Nennt jetzt die neue Datei enigma1.tar falls sie nicht so heißt

    Jetzt rauf auf den Server unter /var/www/"EUREN ORDNER".

    Dort im Ordner noch eine time.txt erstellen mit dem Datum der letzten Änderung in diesem Format:

    JAHRMONATTAG also so 20130713

    Zum schluss noch das Script in

    /etc/scripts

    mit den Attributen 755 als .sh Datei kopieren-------> könnt ihr nennen wie ihr wollt. Ich habe es Settings.sh gennant

    "Falls der Ordner nicht vorhanden ist kann man ihn erstellen"

    Erstellt eine timelu.txt mit dem Datumsformat: JAHRMONATTAG also so 19700101

    Diese kopiert ihr auf eure Dreambox nach

    /etc/

    Hier das Script für Enigma 1 Reciver mit USER PASSWORT:

    #!/bin/sh
    #BESCHREIBUNG=Herunterladen, Installation & Reload Enigma2 Bouquets
    #Die URL auf eure eigene URL umändern wo das tar file liegt
    BQ="http://USER:pASSWORT@DYNDNS:pORT/ORDNER/enigma1.tar"
    BG="enigma1.tar"
    #Die URL auf eure eigene URL umändern wo das tar file liegt
    ST="http://USER:pASSWORT@DYNDNS:pORT/ORDNER/time.txt"

    cd /tmp/
    wget $BQ
    wget $ST
    chmod 755 /tmp/enigma1.tar
    chmod 755 /tmp/time.txt

    #Speichern des Inhalts von timelu.txt und time in einer Variablen
    export timelu=$(cat /etc/timelu.txt | head -n1 | tail -n1)
    export timen=$(cat /tmp/time.txt | head -n1 | tail -n1)

    if [ -s $BG ]; then
    echo "Server Online"
    else
    echo "Server Offline, bitte spaeter nochmal versuchen!"
    fi
    #Vergleich: Ist timelu kleiner als timen ?#
    if [ $timelu -lt $timen ];then

    tar -xvf enigma1.tar

    if [ -s /tmp/enigma1 ]; then
    echo "Entpacken erfolgreich"

    cd /tmp/enigma1

    cd /var/tuxbox/config/enigma/
    rm -rf *.tv
    rm -rf *.radio
    rm -rf *.epl
    rm -rf bouquets
    rm -rf services
    rm -rf services.locked

    mv /tmp/enigma1/* /var/tuxbox/config/enigma/

    #Speichern der time.txt in timelu.txt
    cd /etc
    rm -rf /etc/timelu.txt
    touch timelu.txt
    echo "$timen" >> /etc/timelu.txt
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma1
    rm -rf /tmp/enigma1.tar
    echo "Update erfolgreich abgeschlossen"
    echo "Starte neu um Update wirksam zu machen"

    #wget -q

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    reboot

    else
    echo "Entpacken fehlgeschlagen, bitte Datei prüfen!"
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma1.tar
    fi

    else
    echo "Senderliste aktuell"
    echo "Kein Update noetig"
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma1.tar
    fi

    Hier das Script für Enigma 1 Reciver ohne USER PASSWORT:

    #!/bin/sh
    #BESCHREIBUNG=Herunterladen, Installation & Reload Enigma2 Bouquets
    #Die URL auf eure eigene URL umändern wo das tar file liegt
    BQ="http://DYNDNS:pORT/ORDNER/enigma1.tar"
    BG="enigma1.tar"
    #Die URL auf eure eigene URL umändern wo das tar file liegt
    ST="http://DYNDNS:pORT/ORDNER/time.txt"

    cd /tmp/
    wget $BQ
    wget $ST
    chmod 755 /tmp/enigma1.tar
    chmod 755 /tmp/time.txt

    #Speichern des Inhalts von timelu.txt und time in einer Variablen
    export timelu=$(cat /etc/timelu.txt | head -n1 | tail -n1)
    export timen=$(cat /tmp/time.txt | head -n1 | tail -n1)

    if [ -s $BG ]; then
    echo "Server Online"
    else
    echo "Server Offline, bitte spaeter nochmal versuchen!"
    fi
    #Vergleich: Ist timelu kleiner als timen ?#
    if [ $timelu -lt $timen ];then

    tar -xvf enigma1.tar

    if [ -s /tmp/enigma1 ]; then
    echo "Entpacken erfolgreich"

    cd /tmp/enigma1

    cd /var/tuxbox/config/enigma/
    rm -rf *.tv
    rm -rf *.radio
    rm -rf *.epl
    rm -rf bouquets
    rm -rf services
    rm -rf services.locked

    mv /tmp/enigma1/* /var/tuxbox/config/enigma/

    #Speichern der time.txt in timelu.txt
    cd /etc
    rm -rf /etc/timelu.txt
    touch timelu.txt
    echo "$timen" >> /etc/timelu.txt
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma1
    rm -rf /tmp/enigma1.tar
    echo "Update erfolgreich abgeschlossen"
    echo "Starte neu um Update wirksam zu machen"

    #wget -q

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    reboot

    else
    echo "Entpacken fehlgeschlagen, bitte Datei prüfen!"
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma1.tar
    fi

    else
    echo "Senderliste aktuell"
    echo "Kein Update noetig"
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma1.tar
    fi

    Das Enigma 2 Script wurde getestet auf: TS Image, New Enigma 2, OpenPli und Merlin

    Das Enigma 1 Script wurde getestet auf: Gemini auf DM 7000/7020

    Die Script sind für mich so wie sie sind in Ordnung und funktionieren auch auf den oben aufgezählten Images.

    Würde mich freuen wenn es auch auf anderen Images läuft und hier berichtet wird damit das hier hinzugefügt werden kann.

    Für andere Scripts bin ich nicht zuständig ausser für meine und gebe darauf auch kein Support da ich nicht der Programmiere davon bin

    Viel Spaß

    amassidda
     
    Zuletzt bearbeitet: 1. November 2013
    #1
    meister85, jonny474, 0800555333 und 2 anderen gefällt das.
  2. phantom

    Nervigen User Advertisement

  3. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    AW: Settings über eigenen Server laden möglich

    UPDATE

    Bin jetzt nicht mehr so weit entfernt

    Die enigma2.tar Datei wird mittlerweile von der Dreambox auf /tmp geladen

    nur habe ich noch ein problem mit dem Entpacken/Installieren

    Benutze das TS Image und starte das Script mit Cron

    gruß

    amassidda
     
    #2
  4. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    AW: Settings über eigenen Server laden möglich

    So Leute nach langem machen habe ich es hinbekommen :D

    Da ich euch das gerne teilen möchte damit ihr das auch haben könnt und euch so Zeit spart gebe ich euch mein fertiges Script.

    Mir ist schon mal aufgefallen das dies je nach Image anderst ist deswegen weise ich gleich darauf hin das dieses Script auf dem TS Image, New Enigma 2 funktioniert

    Hier das Script für das TS Image New Enigma 2:

    #!/bin/sh
    #BESCHREIBUNG=Downloadet, Installiert & Reloadet die neuen Enigma 2 Bouquets
    #Ändert die URL um eure Bouquet tar.gz Datei zu laden

    BQ="http://dyndns.org:port/Ordner im Server"Settings"/enigma2.tar.gz"

    ## Bouquet Download, Installation + Reload ##
    cd /tmp/
    wget $BQ
    chmod 755 /tmp/enigma2.tar.gz
    tar -zxvf enigma2.tar.gz

    cd /tmp/enigma2
    mv /tmp/enigma2/satellites.xml /etc/tuxbox/

    cd /etc/enigma2
    rm -rf *.tv
    rm -rf *.radio
    rm -rf blacklist
    rm -rf lamedb
    mv /tmp/enigma2/* /etc/enigma2

    rm -rf /tmp/enigma2
    rm -rf /tmp/enigma2.tar.gz

    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    Natürlich braucht ihr dafür euren eigenen Server.

    Dazu rate ich euch vom Standard Port 80 ab. Ändert diesen um damit auch nicht jeder auf diese Boquest zugreiffe kann.

    Dies könnt ihr unter /etc/apache2/port.conf ändern und sieht dann folgendermasen aus:

    # If you just change the port or add more ports here, you will likely also
    # have to change the VirtualHost statement in
    # /etc/apache2/sites-enabled/000-default
    # This is also true if you have upgraded from before 2.2.9-3 (i.e. from # Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and # README.Debian.gz

    NameVirtualHost *:port

    Listen Port

    usw. ...

    Dort einfach die beiden "Port" ändern z.B. in 55000

    speichern und dann über Putty das hier ausführen: /etc/init.d/apache2 restart

    ACHTUNG: Euer IPC ist nicht mehr standard errecihbar sprich über IP:80 oder IP/ipc sondern über den neuen Port den wir oben vergeben haben in unserem Fall IP:55000

    Eure Settings speichert ihr in einem Ordner Namens "enigma2" und packt ihn mit WinRar oder WinZip als ZIP, speichern und diese dann mit diesem Programm:

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?



    als .tar.gz umwandeln.

    Nennt jetzt die neue umgewandelte Datei enigma2.tar.gz

    Jetzt rauf auf den Server.

    Erstellt am besten einen neuen Ordner z. B. Settings und ladet dort die Datei hinein.

    Am besten ist es das man das LOGIN in den Server mit einem .key verschlüsselt (Ist praktisch da nicht mehr das Passwort eingegeben werden muss). Wenn es mich nicht täuscht gibts hier auch ein How TO dazu.

    So werden angriffe auf den Server einigermasen verhindert.

    Zum schluss noch das Script in

    TS Image: /etc/cron/scripts

    mit den Attributen 755 als .sh Datei kopieren und das Script dann über das entsprechende Tool an der Dreambox laufen lassen

    Beim TS Image : Blau, Werkzeug, Cronmanager, Blau, (Script)

    Bei New Enigma2 mit dem DreamExplorer ausführen: /etc/cron/script/

    Hoffe das es für euch genauso hilfreich ist wie mir (Wenn man drei Dreamboxen zu Hause hat schon nervig :D)

    Natürlich freue ich mich wenn jemand mein Script auch auf anderen Imagen zum laufen bringt aber mit einer BITTE:

    Stelle dies dann hier für andere zur verfügung schließlich sind wir das FORUM

    danke an alle und viel Spaß mit meinem kleinem HOW TO

    Fragen können gerne gestellt werden

    gruß

    amassidda

    UPDATE

    Images deren Script noch nicht erstellt/getestet wurde: Merlin und Gemini

    Wichitger UPDATE:

    Das Script Funktioniert mit dem Newenigma 2 Image aber nur wenn das script Setting.sh gennant wird.

    Weiß nicht warum aber es geht :D

    gruß

    amassidda
     
    Zuletzt bearbeitet: 2. Juli 2013
    #3
  5. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    AW: Settings über eigenen Server laden möglich

    Wichitger UPDATE

    Siehe OBEN

    gruß

    amassidda
     
    #4
  6. Youtube18
    Offline

    Youtube18 Hacker

    Registriert:
    2. Februar 2013
    Beiträge:
    335
    Zustimmungen:
    326
    Punkte für Erfolge:
    63
    AW: Settings über eigenen Server laden möglich

    Erst mal heißt es wichtiges Update :emoticon-0126-nerd:

    Aber egal :D


    Mal ne kurze Frage, für was stehen die folgenden Befehle ?
    So weit ich das sehe wird leider nicht geprüft auf welchem Stand die Bouquets auf der Dreambox ist, d.h bei jedem Neustart der Box wird die Senderliste neu gezogen.
    Das verursacht nur unnötig Traffic und kostet Zeit (Stichwort Aufnahme bei Start aus dem Deep Standby).

    Könnte man nicht mit einer if-Bedingung (wenn es so etwas bei sh Scripts gibt) zuerst Checken lassen auf welchem Stand die Senderliste ist.
    Zum Beispiel wird zuerst mal ne .txt Datei vom Server gezogen und dann deren Inhalt überprüft und dann entschieden ob ein Update fällig ist oder nicht.
    In der .txt Datei könnte zum Beispiel "True oder False" stehen und aufgrund dessen wird dann geupdatet oder nicht.

    Oder man macht es so: Entweder es gibt einen Ordner auf dem Server mit ner neuen Senderliste oder nicht.
    Aber was macht das Script wenn es die Dateien nicht vorfindet ?

    Vielleicht könnte man auch noch eine Ausgabe auf dem Bildschirm machen in der dann steht das ein Update gemacht wurde ...


    Viele Fragen und keine Antworten ...
    Spätestens am Wochenende wede ich mich mal hinsetzen und das Script auf meiner Dreambox mit Merlin3 testen und mich mal an meine Fragen ranmachen :)

    Bis dahin
    Gruß

    Youtube 18
     
    #5
    amassidda gefällt das.
  7. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    AW: Settings über eigenen Server laden möglich

    Also wenn die Datei nicht auf dem Server ist werden die vorhanden Services gelöscht heißt also die komplette Senderliste.

    Das mit dem wget

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?

    sind ein reload der Senderliste im Mode 1 und 2.

    Mit dem sh Script kenne ich mich aber nicht so groß aus in Sachen IF und prüfen ob.

    Das jetzige Script hat natürlich ein verbesserungsbedürftiges aussehen.

    Freue mich schon darauf es gemeinsam mit euch zu verbessern und zu testen.

    Gruß

    amassidda
     
    #6
  8. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    AW: Settings über eigenen Server laden möglich

    Gute neuigkeiten

    Habe das Script etwas verändert :D

    Jetzt wird erst das File vom Server geladen und geprüft ob es auf der Dreambox vorhanden ist.
    Falls JA wird die Senderliste eingespielt und die alte gelöscht.
    Falls NEIN wird angezeigt das der Server Offline ist und man es später nochmal versuchen soll.

    Habe das ganze jetzt auch für die Enigma 1 Reciver gemacht aber noch nicht testen können sollte aber kein Problem sein.

    Hier für euch das Enigma2 script das unter Newenigma 2 und dem TS Image getestet wurde:

    #!/bin/sh
    #BESCHREIBUNG=Downloads, Installs & Reloads the latest Enigma2 Bouquets
    #Die URL auf eure eigene URL umändern wo das tar.gz file liegt
    BQ="http://URL:pORT/ORDNER/enigma2.tar.gz"
    BG="enigma2.tar.gz"
    ## Bouquet Download, Prüfung, Installation + Reload ##
    cd /tmp/
    wget $BQ
    chmod 755 /tmp/enigma2.tar.gz

    if [ -s $BG ]; then
    echo "Update vorhanden"
    echo "Starte Update"

    tar -zxvf enigma2.tar.gz

    cd /tmp/enigma2
    mv /tmp/enigma2/satellites.xml /etc/tuxbox/

    cd /etc/enigma2
    rm -rf *.tv
    rm -rf *.radio
    rm -rf blacklist
    rm -rf lamedb
    mv /tmp/enigma2/* /etc/enigma2

    rm -rf /tmp/enigma2
    rm -rf /tmp/enigma2.tar.gz

    echo "Lade Senderliste neu"

    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?



    echo "Update erfolgreich abgeschlossen"

    else
    echo "Server Offline, bitte spaeter nochmal versuchen!"
    fi

    Hier für Enigma1 noch nicht getestet sollte aber gehen:

    #!/bin/sh
    #BESCHREIBUNG=Downloads, Installs & Reloads the latest Enigma2 Bouquets
    #Die URL auf eure eigene URL umändern wo das tar.gz file liegt
    BQ="http://URL:pORT/ORDNER/enigma1.tar.gz"
    BG="enigma1.tar.gz"
    cd /tmp/

    wget $BQ
    chmod 755 /tmp/enigma1.tar.gz

    if [ -s $BG ]; then
    echo "Start Update"
    tar -xzvf enigma1.tar.gz

    cd /tmp/enigma1

    cd /var/tuxbox/config/enigma/
    rm -rf *.tv
    rm -rf *.radio
    rm -rf *.epl
    rm -rf bouquets
    rm -rf services
    rm -rf services.locked

    mv /tmp/enigma1/* /var/tuxbox/config/enigma/

    rm -rf /tmp/enigma1
    rm -rf /tmp/enigma1.tar.gz

    #wget -q

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    reboot

    else
    echo Server Offline bitte spaeter nochmal versuchen
    fi

    Viel Spaß

    gruß

    amassidda
     
    #7
    Warpilein und Youtube18 gefällt das.
  9. Youtube18
    Offline

    Youtube18 Hacker

    Registriert:
    2. Februar 2013
    Beiträge:
    335
    Zustimmungen:
    326
    Punkte für Erfolge:
    63
    AW: Settings über eigenen Server laden möglich

    Also noch 3 Stunden Google, Sh, Script und co. brummt mir ganz schön der Schädel :wacko1:

    Aber ich habe jetzt das ultimative Script mit Datums Check :yahoo:



    Vorraussetzung (einmalig nötig) für dieses Script sind:

    1. Eine timelu.txt in /etc mit dem folgendem Inhalt
    Code:
    01011970
    2. 755 Rechte für das Script :


    Code:
    #!/bin/sh
    #BESCHREIBUNG=Downloads, Installs & Reloads the latest Enigma2 Bouquets
    #Die URL auf eure eigene URL umändern wo das tar.gz file liegt
    BQ="http://URL:PORT/ORDNER/enigma2.tar.gz"
    ST="http://URL:PORT/ORDNER/time.txt"
    BG="enigma2.tar.gz"
    #Downloaden von time.txt vom Server
    cd /tmp/
    wget $ST
    chmod 755 /tmp/time.txt
    
    #Speichern des Inhalts von timelu.txt und time in einer Variablen
    export timelu=$(cat /etc/timelu.txt | head -n1 | tail -n1)
    export timen=$(cat /tmp/time.txt | head -n1 | tail -n1)
    
     #Vergleich: Ist timelu kleiner als timen ?#
    if [ $timelu -lt $timen ];then
    
    echo "Update vorhanden"
    echo "Starte Update"
    
    #Download der Senderliste vom Server
    wget $BQ
    chmod 755 /tmp/enigma2.tar.gz
    
    tar -zxvf enigma2.tar.gz
    
    #Speichern der time.txt in timelu.txt
    cd /etc
    rm -rf /etc/timelu.txt
    touch timelu.txt
    echo "$timen" >> /etc/timelu.txt
    rm -rf /tmp/time.txt
    
    cd /tmp/enigma2
    mv /tmp/enigma2/satellites.xml /etc/tuxbox/
    
    cd /etc/enigma2
    rm -rf *.tv
    rm -rf *.radio
    rm -rf blacklist
    rm -rf lamedb
    mv /tmp/enigma2/* /etc/enigma2
    
    rm -rf /tmp/enigma2
    rm -rf /tmp/enigma2.tar.gz
    
    echo "Lade Senderliste neu"
    
    wget -qO - http://127.0.0.1/web/servicelistreload?mode=1
    wget -qO - http://127.0.0.1/web/servicelistreload?mode=2
    
    echo "Update erfolgreich abgeschlossen"
    
    #Timen ist kleiner oder gleich groß wie timelu
    else
    echo "Senderliste aktuell"
    echo "Kein Update nötig"
    rm -rf /tmp/time.txt
    fi
    
    sleep 2
    exit 0
    

    Ein Update der Senderliste wird angestoßen wenn das Datum in der timelu.txt (01011970 soll heißen 01.01.1970) kleiner ist als das Datum in der time.txt.
    Wenn das Datum in der time.txt gleich ist wie in der timelu.txt oder das Datum in der timelu größer ist als das der time.txt dann passiert nix.


    Klartext: Datum in der time.txt auf dem Server muss größer (aktueller) sein als das in der timelu.txt auf der Dreambox.
    Datumsangabe immer ohne Punkt dazwischen. Also 04072013


    Achja, das Script läuft 1A auf meiner Dream mit Merlin3 OE2.0




    Gruß
    Youtube18
     
    Zuletzt bearbeitet: 4. Juli 2013
    #8
    0800555333, amassidda und Warpilein gefällt das.
  10. Warpilein
    Offline

    Warpilein Stamm User

    Registriert:
    14. Dezember 2010
    Beiträge:
    1.209
    Zustimmungen:
    405
    Punkte für Erfolge:
    83
    AW: Settings über eigenen Server laden möglich

    Das sieht recht interessant aus, werde mich damit morgen mal beschäftigen ;-) danke schon mal

    Gesendet von meinem NexusHD2 mit Tapatalk 2
     
    #9
  11. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    AW: Settings über eigenen Server laden möglich

    Leider noch nicht ganz da bei dir jetzt der gleiche Fehler auftaucht wie bei mir davor und zwar:

    Wenn der Server mal offline ist du aber das script startest es deine Senderliste löscht weil es nicht prüft ob es die enigma2.tar.gz runtergeladen hat.

    Ist zwar nur ne kleinigkeit aber ausschlaggebend da sonst die ganze Senderliste die auf der Dreambox ist verloren geht.

    Schaue mal was ich da noch machen kann.

    Vielleicht bekommen wir es hin das geprüft wird ob das File enigma2.tar.gz vorhanden ist und ob das Datum aktuell ist oder nicht.

    Erst dann ist es ultimativ :D

    gruß

    amassidda
     
    #10
  12. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    AW: Settings über eigenen Server laden möglich

    So jetzt ist es so weit

    Script Ultimativ transformed :D

    Hier für Enigma 2 Tested auf TS Image, New Enigma 2 und Merlin 3:

    #!/bin/sh
    #BESCHREIBUNG=Downloads, Installs & Reloads the latest Enigma2 Bouquets
    #Die URL auf eure eigene URL umändern wo das tar.gz file liegt
    BQ="http://URL:pORT/ORDNER/enigma2.tar.gz"
    BG="enigma2.tar.gz"
    ST="http://URL:pORT/ORDNER/time.txt"
    ## Bouquet Download, Prüfung, Installation + Reload ##
    cd /tmp/
    wget $BQ
    wget $ST
    chmod 755 /tmp/enigma2.tar.gz
    chmod 755 /tmp/time.txt

    #Speichern des Inhalts von timelu.txt und time in einer Variablen
    export timelu=$(cat /etc/timelu.txt | head -n1 | tail -n1)
    export timen=$(cat /tmp/time.txt | head -n1 | tail -n1)

    if [ -s $BG ]; then
    echo "Server Online"
    else
    echo "Server Offline, bitte spaeter nochmal versuchen!"
    fi
    #Vergleich: Ist timelu kleiner als timen ?#
    if [ $timelu -lt $timen ];then

    echo "Starte Update"

    tar -zxvf enigma2.tar.gz

    cd /tmp/enigma2
    mv /tmp/enigma2/satellites.xml /etc/tuxbox/

    cd /etc/enigma2
    rm -rf *.tv
    rm -rf *.radio
    rm -rf blacklist
    rm -rf lamedb
    mv /tmp/enigma2/* /etc/enigma2

    rm -rf /tmp/enigma2
    rm -rf /tmp/enigma2.tar.gz

    echo "Lade Senderliste neu"

    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    wget -qO -

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?



    #Speichern der time.txt in timelu.txt
    cd /etc
    rm -rf /etc/timelu.txt
    touch timelu.txt
    echo "$timen" >> /etc/timelu.txt
    rm -rf /tmp/time.txt

    echo "Update erfolgreich abgeschlossen"

    else
    echo "Senderliste aktuell"
    echo "Kein Update noetig"
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma2.tar.gz
    fi
    Natürlcih auch für Enigma 1 auch wenn noch nicht getestet soltte aber gehen:

    #!/bin/sh
    #BESCHREIBUNG=Downloads, Installs & Reloads the latest Enigma1 Bouquets
    #Die URL auf eure eigene URL umändern wo das tar.gz file liegt
    BQ="http://URL:pORT/ORDNER/enigma1.tar.gz"
    BG="enigma1.tar.gz"
    ST="http://URL:pORT/ORDNER/time.txt"

    cd /tmp/
    wget $BQ
    wget $ST
    chmod 755 /tmp/enigma1.tar.gz
    chmod 755 /tmp/time.txt

    #Speichern des Inhalts von timelu.txt und time in einer Variablen
    export timelu=$(cat /etc/timelu.txt | head -n1 | tail -n1)
    export timen=$(cat /tmp/time.txt | head -n1 | tail -n1)

    if [ -s $BG ]; then
    echo "Server Online"
    else
    echo "Server Offline, bitte spaeter nochmal versuchen!"
    fi
    #Vergleich: Ist timelu kleiner als timen ?#
    if [ $timelu -lt $timen ];then

    echo "Starte Update"

    tar -xzvf enigma1.tar.gz

    cd /tmp/enigma1

    cd /var/tuxbox/config/enigma/
    rm -rf *.tv
    rm -rf *.radio
    rm -rf *.epl
    rm -rf bouquets
    rm -rf services
    rm -rf services.locked

    mv /tmp/enigma1/* /var/tuxbox/config/enigma/

    #Speichern der time.txt in timelu.txt
    cd /etc
    rm -rf /etc/timelu.txt
    touch timelu.txt
    echo "$timen" >> /etc/timelu.txt
    rm -rf /tmp/time.txt
    rm -rf /tmp/enigma1
    rm -rf /tmp/enigma1.tar.gz
    echo "Update erfolgreich abgeschlossen"
    echo "Starte neu um Update wirksam zu machen"

    #wget -q

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    reboot

    else
    echo "Senderliste aktuell"
    echo "Kein Update noetig"
    fi

    Die timelu.txt muss trotzdem erstellt werden aber bitte beachten das es mit 19700101 erstellt wird und dass man die Datei dann auch nicht ändert sonst wird das Update nicht gemacht und dauernd angezeigt es sei aktuell.

    Viel Spaß und ein großes danke an Youtube18 der auch fleißig mitgemacht hat

    gruß

    amassidda
     
    Zuletzt bearbeitet: 4. Juli 2013
    #11
    jonny474 und Youtube18 gefällt das.
  13. Youtube18
    Offline

    Youtube18 Hacker

    Registriert:
    2. Februar 2013
    Beiträge:
    335
    Zustimmungen:
    326
    Punkte für Erfolge:
    63
    AW: Settings über eigenen Server laden möglich

    Wenn der Server nicht erreichbar ist, dann passiert nix (Bei meinem Script zumindest) :)

    [​IMG]


    Dein Script geht natürlich auch, aber bei meinem wird nur die time.txt runtergeladen.
    Bei dir wird immer die komplette Senderliste geladen, egal ob ein Update nötig ist oder nicht.

    Bei deinem Script kommt lediglich noch zusätzlich die Ausgabe Server offline oder online :)
    Aber hast recht wäre nicht schlecht noch dazu zu schreiben.


    Also Ihr könnt euch entscheiden, entweder Ihr nehmt das Script von amassidda mit Server online oder offline, wo jedes mal die Senderliste gedownloadet wird, oder Ihr nehmt meins, wo nur die time.txt gedownloadet wird, dafür aber keine Ausgabe Server online oder offline kommt.


    Gruß
     
    Zuletzt bearbeitet: 4. Juli 2013
    #12
  14. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    AW: Settings über eigenen Server laden möglich

    Bei mir war die Senderliste weg als ich dein Script gestartet habe und mit Absicht das File am Server umbenannt hatte um zu sehen was passiert.

    Habe es ja behoben und kannst ja auch testen das neue Script prüft nun eben beides.

    Ob der Server online ist und ob das Datum kleiner ist als auf den Server.

    Gruß

    amassidda
     
    #13
  15. amassidda
    Offline

    amassidda Meister

    Registriert:
    30. Mai 2010
    Beiträge:
    786
    Zustimmungen:
    336
    Punkte für Erfolge:
    63
    Beruf:
    Informatiker
    AW: Settings über eigenen Server laden möglich

    Noch was das mit dem Datum stimmt auch nicht ganz da die Zahl 01011970 kleiner ist als 20130704 sprich es wird nicht als Datum gelesen sondern als komplette Zahl.

    Das Datum wird dan so geschrieben JAHR/MONAT/TAG=20130704

    Ja das stimmt die Senderliste wird mit Runtergeladen aber dazu auch gelöscht fals kein UPDATE nötig ist.

    Aber ohne die Senderliste runterzuladen kann nicht geprüft werden ob der Server Online oder Offline ist.

    Deine Variante geht natürlich auch kein Thema aber wie oben schon erwäht hat es bei deiner Variante meine Senderliste gelöscht kann ja jeder für sich testen und entscheiden was er haben will

    Hoffe ihr versteht was ich meine

    Danke dir trozdem das du beim aufbau des Scripts mit geholfen hast

    gruß

    amassidda
     
    Zuletzt bearbeitet: 4. Juli 2013
    #14
    Youtube18 gefällt das.
  16. Youtube18
    Offline

    Youtube18 Hacker

    Registriert:
    2. Februar 2013
    Beiträge:
    335
    Zustimmungen:
    326
    Punkte für Erfolge:
    63
    AW: Settings über eigenen Server laden möglich

    Stimmt, aber ob ich jetzt das Datum 01011970 mit 04072013 vergleiche oder 19700101 mit 20130704 ist eigendlich egal.

    Aber ich glaube du hast mein Script noch nicht ganz verstanden :D
    Das Datum 01.01.1970 in der timelu.txt ist nur dazu da das einmal eine Senderliste gedownloadet wird und das Datum in der timelu.txt aktualisert wird.
    Sobald du das Script zum ersten mal startest wird das Datum eh mit dem aktuellen in der time.txt vom Server ausgetauscht.
    Du kannst statt dem Datum auch einzelne Zahlen oder sonst was nehmen, Hauptsache wenn upgedatet werden soll muss die Zahl in der time.txt vom Server größer sein als in der timelu.txt auf der Dreambox.


    Stimmt, aber da ich Traffic sparen möchte ist mir diese Ausgabe nicht sooooo wichtig. Aber bei mir auf der Dream mit Merlin3 wird die Senderliste nur gelöscht/ersetzt wenn ein Update (Sichwort time.txt) verfügbar ist.

    Ich würde jetzt mal sagen das ist Image abhängig. Mein Script läuft zu 100% auf Merlin3 (optimiert für Merlin3 :))

    Ja schon.


    Bitte bitte, sehr gerne. Dieses Thema hat mich schon lange interessiert, habe mich aber nie drangemacht.
    Wie würde man im Fußball sagen:
    Du hast mir einen perfekten Pass gespielt und ich habe ihn dann (fast) reingemacht.

    Gruß

    Youtube18
     
    #15
    amassidda gefällt das.

Diese Seite empfehlen