Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [gelöst]Aus den Backups ein Javascript extrahieren

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    848

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

[gelöst]Aus den Backups ein Javascript extrahieren

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
28 Beiträge 7 Kommentatoren 2.5k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • MartinPM MartinP

    @grrfield Das Restore aus der GUI scheint nicht weiterzulaufen, wenn man irgendwann den Browser schließt und den Rechner ausschaltet....

    Das Script hat wunderbar funktioniert ...

    Ich habe es auf meinem Linux-PC auf ein lokales Backup.tar.gz File vom NAS-Laufwerk arbeiten lassen

    Hier das angepasste Skript - geht alles in ein lokales Arbeitsverzeichnis, und nutzt "console.log()"

    /*
    
    Script zum Extrahieren von Scripts aus dem backup.json file
    1. Verzeichnis /opt/iobroker/restore/ erstellen
    2. backup.json file aus Backup extrahieren und in obiges Verzeichnis kopieren
    3. Im Script unten den gewünschten Namen des Scripts eintragen
    3. Script starten
    4. das extrahierte Script wird mit dem Namen "the_script.js" erzeugt
    */
    
     
    
    // Hier das Verzeichnis und den Namen des Scripts eintragen. 
    // Im Beispiel das Script 'Jalousien', das unter 'common' abgelegt wurde
    
    
    // const name_of_script = "common.Jalousien";
    const name_of_script = "Fritzbox.DOCSISV01";
    
     
    
    var fs = require('fs');
    //var filename = '/opt/iobroker/restore/backup.json';
    var filename = './backup.json';
    fs.readFile(filename, 'utf8', function(err, data) {
      if (!err) {
        var objects = JSON.parse(data).objects;
        var index = objects.findIndex(x => x.id ==="script.js." + name_of_script);
        var source = objects[index];
        var script_text = unescape(source.value.common.source);
        // fs.writeFile("/opt/iobroker/restore/the_script.js", script_text, function(err) {
        fs.writeFile("./the_script.js", script_text, function(err) {
        if(err) {
            return console.log(err);
        }
        console.log("Script was extracted");
        });
      } else console.log("backup.json konnte nicht gelesen werden");
    });
    
    
    

    Arbeitsanweisung:
    Auspacken von backup.json

    martin@martin-D2836-S1:~/backup$ tar -xf ../backups/iobroker_2024_06_29-02_40_11_backupiobroker.tar.gz  backup.json
    

    Aufrufen des Scripts

    martin@martin-D2836-S1:~/backup$ node extract.js 
    Script was extracted
    
    
    simatecS Offline
    simatecS Offline
    simatec
    Developer Most Active
    schrieb am zuletzt editiert von
    #21

    @martinp Warum stellst du denn alles wieder her... Du hast doch laut Screenshot ein Backup der Javaskripte separat gemacht.
    Es hätte völlig ausgereicht, dieses wiederherzustellen

    • Besuche meine Github Seite
    • Beitrag hat geholfen oder willst du mich unterstützen
    • HowTo Restore ioBroker
    MartinPM 1 Antwort Letzte Antwort
    0
    • simatecS simatec

      @martinp Warum stellst du denn alles wieder her... Du hast doch laut Screenshot ein Backup der Javaskripte separat gemacht.
      Es hätte völlig ausgereicht, dieses wiederherzustellen

      MartinPM Online
      MartinPM Online
      MartinP
      schrieb am zuletzt editiert von
      #22

      @simatec Den Haken bei "Javascript" habe ich erst aktivert NACHDEM ich das Skript geschrottet hatte ...

      Alte Bauernregel: Man sollte die Backups seiner Produkte unter die Lupe nehmen, BEVOR etwas passiert ist ...

      Aber immerhin habe ich gelernt, dass es eigentlich unnötig ist, die Skripte separat zu sichern ...

      Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
      Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
      Linux pve 6.8.12-16-pve
      6 GByte RAM für den Container
      Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
      Remote-Access über Wireguard der Fritzbox

      1 Antwort Letzte Antwort
      0
      • MartinPM MartinP

        @thomas-braun Habe vielleicht einen Workaround ...

        Man kann die Json Konfig exportieren und importieren, und ggfs. dazwischen einfach bei "mirrorPath" etwas eintragen ...

        {
          "latitude": "",
          "longitude": "",
          "enableSetObject": true,
          "enableSendToHost": true,
          "enableExec": true,
          "libraries": "",
          "libraryTypings": "",
          "subscribe": false,
          "useSystemGPS": true,
          "mirrorPath": "",
          "mirrorInstance": "0",
          "allowSelfSignedCerts": false,
          "sunriseEvent": "sunrise",
          "sunriseOffset": "",
          "sunriseLimitStart": "06:00",
          "sunriseLimitEnd": "12:00",
          "sunsetEvent": "dusk",
          "sunsetOffset": "",
          "sunsetLimitStart": "18:00",
          "sunsetLimitEnd": "23:00",
          "maxSetStatePerMinute": "1000",
          "gptKey": "",
          "createAstroStates": true,
          "maxTriggersPerScript": 100
        }
        

        2144aae9-0382-48ba-aee0-e5ab81590ac4-grafik.png

        MartinPM Online
        MartinPM Online
        MartinP
        schrieb am zuletzt editiert von MartinP
        #23

        Nachtrag: Ich habe jetzt die javascript.0.json von Hand bearbeitet, auf folgenden Stand:

        {
          "latitude": "",
          "longitude": "",
          "enableSetObject": true,
          "enableSendToHost": true,
          "enableExec": true,
          "libraries": "",
          "libraryTypings": "",
          "subscribe": false,
          "useSystemGPS": true,
          "mirrorPath": "/opt/iobroker/restore/skripte",
          "mirrorInstance": "javascript.0",
          "allowSelfSignedCerts": false,
          "sunriseEvent": "sunrise",
          "sunriseOffset": "",
          "sunriseLimitStart": "06:00",
          "sunriseLimitEnd": "12:00",
          "sunsetEvent": "dusk",
          "sunsetOffset": "",
          "sunsetLimitStart": "18:00",
          "sunsetLimitEnd": "23:00",
          "maxSetStatePerMinute": "1000",
          "gptKey": "",
          "createAstroStates": true,
          "maxTriggersPerScript": 100
        }
        

        Der Konfigurationsdialog sieht nun interessant aus ...

        65efb6f2-6bc1-492e-82c6-a909f55dbb22-grafik.png

        Ich denke, in dieser Version ist der Konfigurationsdialog ein wenig kaputt, da mit der Version aus dem Beta Repository die Probleme aber wohl nicht auftreten, werde ich das erstmal so lassen, und auf das Update in stable warten ...

        @martinp said in [gelöst]Aus den Backups ein Javascript extrahieren:

        @thomas-braun Habe vielleicht einen Workaround ...

        Man kann die Json Konfig exportieren und importieren, und ggfs. dazwischen einfach bei "mirrorPath" etwas eintragen ...

        {
          "latitude": "",
          "longitude": "",
          "enableSetObject": true,
          "enableSendToHost": true,
          "enableExec": true,
          "libraries": "",
          "libraryTypings": "",
          "subscribe": false,
          "useSystemGPS": true,
          "mirrorPath": "",
          "mirrorInstance": "0",
          "allowSelfSignedCerts": false,
          "sunriseEvent": "sunrise",
          "sunriseOffset": "",
          "sunriseLimitStart": "06:00",
          "sunriseLimitEnd": "12:00",
          "sunsetEvent": "dusk",
          "sunsetOffset": "",
          "sunsetLimitStart": "18:00",
          "sunsetLimitEnd": "23:00",
          "maxSetStatePerMinute": "1000",
          "gptKey": "",
          "createAstroStates": true,
          "maxTriggersPerScript": 100
        }
        

        Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
        Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
        Linux pve 6.8.12-16-pve
        6 GByte RAM für den Container
        Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
        Remote-Access über Wireguard der Fritzbox

        bahnuhrB 1 Antwort Letzte Antwort
        0
        • MartinPM MartinP

          Nachtrag: Ich habe jetzt die javascript.0.json von Hand bearbeitet, auf folgenden Stand:

          {
            "latitude": "",
            "longitude": "",
            "enableSetObject": true,
            "enableSendToHost": true,
            "enableExec": true,
            "libraries": "",
            "libraryTypings": "",
            "subscribe": false,
            "useSystemGPS": true,
            "mirrorPath": "/opt/iobroker/restore/skripte",
            "mirrorInstance": "javascript.0",
            "allowSelfSignedCerts": false,
            "sunriseEvent": "sunrise",
            "sunriseOffset": "",
            "sunriseLimitStart": "06:00",
            "sunriseLimitEnd": "12:00",
            "sunsetEvent": "dusk",
            "sunsetOffset": "",
            "sunsetLimitStart": "18:00",
            "sunsetLimitEnd": "23:00",
            "maxSetStatePerMinute": "1000",
            "gptKey": "",
            "createAstroStates": true,
            "maxTriggersPerScript": 100
          }
          

          Der Konfigurationsdialog sieht nun interessant aus ...

          65efb6f2-6bc1-492e-82c6-a909f55dbb22-grafik.png

          Ich denke, in dieser Version ist der Konfigurationsdialog ein wenig kaputt, da mit der Version aus dem Beta Repository die Probleme aber wohl nicht auftreten, werde ich das erstmal so lassen, und auf das Update in stable warten ...

          @martinp said in [gelöst]Aus den Backups ein Javascript extrahieren:

          @thomas-braun Habe vielleicht einen Workaround ...

          Man kann die Json Konfig exportieren und importieren, und ggfs. dazwischen einfach bei "mirrorPath" etwas eintragen ...

          {
            "latitude": "",
            "longitude": "",
            "enableSetObject": true,
            "enableSendToHost": true,
            "enableExec": true,
            "libraries": "",
            "libraryTypings": "",
            "subscribe": false,
            "useSystemGPS": true,
            "mirrorPath": "",
            "mirrorInstance": "0",
            "allowSelfSignedCerts": false,
            "sunriseEvent": "sunrise",
            "sunriseOffset": "",
            "sunriseLimitStart": "06:00",
            "sunriseLimitEnd": "12:00",
            "sunsetEvent": "dusk",
            "sunsetOffset": "",
            "sunsetLimitStart": "18:00",
            "sunsetLimitEnd": "23:00",
            "maxSetStatePerMinute": "1000",
            "gptKey": "",
            "createAstroStates": true,
            "maxTriggersPerScript": 100
          }
          
          bahnuhrB Online
          bahnuhrB Online
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #24

          @martinp

          @fastfoot hatte hier mal ein Script geschrieben.
          https://forum.iobroker.net/topic/53849/ordner-und-skripte-verschwunden/8?_=1719814391362

          vielleicht hilfts.


          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
          Danke.
          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
          ScreenToGif :https://www.screentogif.com/downloads.html

          MartinPM 1 Antwort Letzte Antwort
          0
          • bahnuhrB bahnuhr

            @martinp

            @fastfoot hatte hier mal ein Script geschrieben.
            https://forum.iobroker.net/topic/53849/ordner-und-skripte-verschwunden/8?_=1719814391362

            vielleicht hilfts.

            MartinPM Online
            MartinPM Online
            MartinP
            schrieb am zuletzt editiert von MartinP
            #25

            @bahnuhr Das habe ich auch schon entdeckt und angepasst ...

            Ich hatte schon ein anderes Skript, was etwas ähnliches macht ...

            https://forum.iobroker.net/topic/75575/gelöst-aus-den-backups-ein-javascript-extrahieren/20?_=1719831259261

            Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
            Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
            Linux pve 6.8.12-16-pve
            6 GByte RAM für den Container
            Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
            Remote-Access über Wireguard der Fritzbox

            bahnuhrB 1 Antwort Letzte Antwort
            0
            • MartinPM MartinP

              @bahnuhr Das habe ich auch schon entdeckt und angepasst ...

              Ich hatte schon ein anderes Skript, was etwas ähnliches macht ...

              https://forum.iobroker.net/topic/75575/gelöst-aus-den-backups-ein-javascript-extrahieren/20?_=1719831259261

              bahnuhrB Online
              bahnuhrB Online
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #26

              @martinp
              Sollte man nicht den Autor im Script drin stehen lassen ?

              ;-)


              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
              Danke.
              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
              ScreenToGif :https://www.screentogif.com/downloads.html

              MartinPM 1 Antwort Letzte Antwort
              0
              • bahnuhrB bahnuhr

                @martinp
                Sollte man nicht den Autor im Script drin stehen lassen ?

                ;-)

                MartinPM Online
                MartinPM Online
                MartinP
                schrieb am zuletzt editiert von MartinP
                #27

                @bahnuhr Ist doch ein komplett anderes Skript ...
                https://forum.iobroker.net/topic/34161/source-code-von-script-aus-backup-json-extrahieren

                Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                Linux pve 6.8.12-16-pve
                6 GByte RAM für den Container
                Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                Remote-Access über Wireguard der Fritzbox

                bahnuhrB 1 Antwort Letzte Antwort
                0
                • MartinPM MartinP

                  @bahnuhr Ist doch ein komplett anderes Skript ...
                  https://forum.iobroker.net/topic/34161/source-code-von-script-aus-backup-json-extrahieren

                  bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #28

                  @martinp sagte in [gelöst]Aus den Backups ein Javascript extrahieren:

                  @bahnuhr Ist doch ein komplett anderes Skript ...

                  dann gut.


                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                  Danke.
                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                  ScreenToGif :https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  Antworten
                  • In einem neuen Thema antworten
                  Anmelden zum Antworten
                  • Älteste zuerst
                  • Neuste zuerst
                  • Meiste Stimmen


                  Support us

                  ioBroker
                  Community Adapters
                  Donate
                  FAQ Cloud / IOT
                  HowTo: Node.js-Update
                  HowTo: Backup/Restore
                  Downloads
                  BLOG

                  808

                  Online

                  32.6k

                  Benutzer

                  82.1k

                  Themen

                  1.3m

                  Beiträge
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                  ioBroker Community 2014-2025
                  logo
                  • Anmelden

                  • Du hast noch kein Konto? Registrieren

                  • Anmelden oder registrieren, um zu suchen
                  • Erster Beitrag
                    Letzter Beitrag
                  0
                  • Home
                  • Aktuell
                  • Tags
                  • Ungelesen 0
                  • Kategorien
                  • Unreplied
                  • Beliebt
                  • GitHub
                  • Docu
                  • Hilfe