Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Backup - Script in der 2ten Version

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Vorlage] Backup - Script in der 2ten Version

    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      Knorki last edited by

      @peoples:

      Hast du Mal darüber nachgedacht den verwendeten User und die admins auf zu nehmen? So hab ich's zumindest `

      Hallo,

      wie meinst Du das, wo aufzunehmen? Würde das evtl. auch bei meiinem Problem helfen?

      Gruß

      Stefan

      1 Reply Last reply Reply Quote 0
      • Peoples
        Peoples last edited by

        Guggst du:

        <url url="https://blog.emeidi.com/2016/02/05/einem-benutzer-unter-debian-volle-sudo-rechte-geben/">[https://blog.emeidi.com/2016/02/05/einem-benutzer-unter-debian-volle-sudo-rechte-geben/ " target="_blank">](</s><LINK_TEXT text=)[<link_text text="https://blog.emeidi.com/2016/02/05/eine … te-geben/
        ">https://blog.emeidi.com/2016/02/05/einem-benutzer-unter-debian-volle-sudo-rechte-geben/</link_text>](</s><LINK_TEXT text=)</url>

        Hoffe das hilft weiter

        1 Reply Last reply Reply Quote 0
        • Q
          quorle last edited by

          @peoples:

          Habe das große immer gemacht während er lief und mir ist da nichts fehlendes aufgefallen.

          Warum das bei dir nicht durchläuft versteh ich trotzdem noch nicht. Via Konsole geht's auch mit dem Stop oder?

          Hast du Mal darüber nachgedacht den verwendeten User und die admins auf zu nehmen? So hab ich's zumindest `

          Habe jetzt einmal den User PI in den nach dieser Anleitung eingetragen: https://blog.emeidi.com/2016/02/05/eine … hte-geben/

          Des weiteren habe ich dem Benutzer PI root-rechte zugewiesen.

          Via Konsole:

          ich nehme die Befehle aus deinem backitup.sh und tippe sie 1:1 in die Konsole ein und er erstellt ein Backup, ohne vorrangiges "sudo"

          Via VIS klappt das nicht. Denn er stoppt den io.Broker und dann macht er immer noch nichts und es kommt auch keine Fehlerausgabe.

          Nun Habe ich in der Backitup.sh den "STOP" und "START" auskommentiert und es wird ein Backup erstellt. Jedoch ist dies in meinen Augen nicht die tollste Lösung. Aber die MYSQL-Datenbank wird nicht auf die NAS geschoben. Woran kann dies liegen?

          Auch die History funktioniert leider nicht so wie sie soll, bei dir sind ja Farben im Spiel, da gibt es bei mir nur graue Schrift.

          1 Reply Last reply Reply Quote 0
          • F
            fraeggle last edited by

            Hmm Hab ne Fritzbox mit ner USB Platte dran. Nun wollte ich das Backup per FTP auf die Fritzbox sichern lassen.

            USER, PW und ip Adresse stehen im script, aber das Script überträgt nix auf die Platte.

            „sudo apt-get install lftp“ ist installiert.

            Anmeldung an der Fritz mit USER und PW über Filezilla geht.

            Hatt dies jemand vielleicht schon hinbekommen?

            Gruß Peter

            :?

            Hab eine "Lösung". Fehler ist das Fehlende SSL Certificat.

            nano /etc/lftp.conf

            am Ende folgendes einfügen:

            set ftp:ssl-allow false

            1 Reply Last reply Reply Quote 0
            • smartboart
              smartboart last edited by

              Ich hab das Backup für die Fritte am laufen…

              Certificate verification problem

              In der Datei /etc/lftp.conf folgende Zeile einfügen..

              set ssl:verify-certificate no

              1 Reply Last reply Reply Quote 0
              • smartboart
                smartboart last edited by

                Hallo, habe schon die vorgänger version am Laufen…Tolle Sache und das liest sich auch sehr spannend...

                Funktioniert das Backup auch für die pivCCU 2.31.25 auf dem tinkerboard? Oder geht das nur mit Rasperymatic?

                Danke

                1 Reply Last reply Reply Quote 0
                • Q
                  quorle last edited by

                  @smartboart:

                  Hallo, habe schon die vorgänger version am Laufen…Tolle Sache und das liest sich auch sehr spannend...

                  Funktioniert das Backup auch für die pivCCU 2.31.25 auf dem tinkerboard? Oder geht das nur mit Rasperymatic?

                  Danke `

                  Also was ich weis, geht es nur mit raspberrymatic. Stehe vor dem selben Problem mit pivccu. Aber der Ersteller ist an einer Lösung.

                  Gesendet von iPhone mit Tapatalk

                  1 Reply Last reply Reply Quote 0
                  • Peoples
                    Peoples last edited by

                    @smartboart:

                    Ich hab das Backup für die Fritte am laufen…

                    Certificate verification problem

                    In der Datei /etc/lftp.conf folgende Zeile einfügen..

                    set ssl:verify-certificate no `

                    Das wäre doch etwas was sinnvoll wäre in die Anleitung aufgenommen zu werden oder seht ihr das anders?

                    1 Reply Last reply Reply Quote 0
                    • Peoples
                      Peoples last edited by

                      @quorle:

                      @smartboart:

                      Hallo, habe schon die vorgänger version am Laufen…Tolle Sache und das liest sich auch sehr spannend...

                      Funktioniert das Backup auch für die pivCCU 2.31.25 auf dem tinkerboard? Oder geht das nur mit Rasperymatic?

                      Danke `

                      Also was ich weis, geht es nur mit raspberrymatic. Stehe vor dem selben Problem mit pivccu. Aber der Ersteller ist an einer Lösung.

                      Gesendet von iPhone mit Tapatalk `

                      Genau so ist es!

                      1 Reply Last reply Reply Quote 0
                      • Peoples
                        Peoples last edited by

                        @quorle:

                        Via Konsole:

                        ich nehme die Befehle aus deinem backitup.sh und tippe sie 1:1 in die Konsole ein und er erstellt ein Backup, ohne vorrangiges "sudo"

                        Via VIS klappt das nicht. Denn er stoppt den io.Broker und dann macht er immer noch nichts und es kommt auch keine Fehlerausgabe.

                        Nun Habe ich in der Backitup.sh den "STOP" und "START" auskommentiert und es wird ein Backup erstellt. Jedoch ist dies in meinen Augen nicht die tollste Lösung. ` Ich hatte es eigentlich immer so ohne den iobroker zu stoppen und wenn ich ehrlich bin konnte ich nie wirklich feststellen dass irgendetwas bei einem Testrestor gefehlt hätte. Den Stop und den Start habe ich eingebaut weil es damals hieß es wäre so richtig.

                        @quorle:

                        Aber die MYSQL-Datenbank wird nicht auf die NAS geschoben. Woran kann dies liegen? `
                        Die Mysql-Datenbank ist auf dem localhost?

                        Und das Backup liegt auch auf dem iobroker dann in backups?

                        Was hast du für eine Hardware? Rpi3?

                        @quorle:

                        Auch die History funktioniert leider nicht so wie sie soll, bei dir sind ja Farben im Spiel, da gibt es bei mir nur graue Schrift. `
                        Hier kann ich dir ganz einfach helfen, ich habe das via css gemacht:

                        .backup_history{
                            display:block;
                            width:100%;
                        /*    overflow-y:scroll; */
                        }
                        .bkptyp_minimal
                            {
                                float:left;
                                color:white;
                                font-size:18px;
                            }
                        .bkptyp_komplett
                            {
                                float:left;
                                color:yellow;
                                font-size:18px;
                            }
                        .bkptyp_raspberrymatic
                            {
                                float:left;
                                color:red;
                                font-size:18px;
                            }
                        
                        1 Reply Last reply Reply Quote 0
                        • Q
                          quorle last edited by

                          ` > Die Mysql-Datenbank ist auf dem localhost?

                          Und das Backup liegt auch auf dem iobroker dann in backups?

                          Was hast du für eine Hardware? Rpi3? `

                          Ja ich es läuft alles auf einem RPI3.

                          Backup von MYSQL und io.Broker liegt auf dem RPI und zusätzlich wird <u>nur</u> das Backup vom io.Broker auf die NAS übertragen, dass Backup von MYSQL wird <u>nicht</u> auf die NAS übertragen.

                          Super, die History sieht jetzt deutlich besser und übersichtlicher aus 😉 vielen lieben Dank

                          1 Reply Last reply Reply Quote 0
                          • F
                            fraeggle last edited by

                            Arghh 😞

                            Ich krieg das Backup der Raspberrymatic nicht hin.

                            Führe ich den Befehl

                            bash /opt/iobroker/backitup.sh "raspberrymatic||5|IP-FTP||USERFTP|PWFTP|IP-Raspberrymatic|PW-HM|NEIN||||"

                            (IP's, User und PW hab ich hier ersetzt) funktioniert der Backup und wird auch übertragen auf den FTP

                            Mach ich das über den importierten VIS Button seh ich im LOG genau diese Zeile auch, aber es passiert nichts.

                            Was vlt auch vielen das einbinden der Raspberrymatic erleichtert:

                            Einmal vom IOBroker über ssh auf den Raspberrymatic verbinden

                            und den ECDSA Fingerprint bestätigen.

                            ssh root@IP-Adresse_des_Raspberrymatic

                            Ich musste in der Backitup.sh folgendes ändern (da ich kein Recht beim Kopieren über sshpass auf das Verzeichnis backups

                            hatte (liegt vlt daran, das der Raspberrymatic auf einem BananaPI läuft, da gibt es den User root in dem Image so nicht):

                            Kopieren des Backups auf IoBroker Maschine

                            sshpass -p "$RASP_PASS" scp -r root@$RASP_HOST:/tmp/bkp/* /opt/iobroker/backups/

                            sshpass -p "$RASP_PASS" scp -r root@$RASP_HOST:/tmp/bkp/* /home/io/hm/

                            sudo mv /home/io/hm/* /opt/iobroker/backups/

                            ABER wie gesagt geht es nicht über VIS. Die anderen Backups (minimal und komplett funktionieren).

                            Scripte und Dateien sind vom ersten Post.

                            Gruß Peter
                            3832_iobroker_hm_backup.jpg

                            1 Reply Last reply Reply Quote 0
                            • Peoples
                              Peoples last edited by

                              @fraeggle:

                              Arghh 😞

                              Ich krieg das Backup der Raspberrymatic nicht hin.

                              Führe ich den Befehl

                              bash /opt/iobroker/backitup.sh "raspberrymatic||5|IP-FTP||USERFTP|PWFTP|IP-Raspberrymatic|PW-HM|NEIN||||"

                              (IP's, User und PW hab ich hier ersetzt) funktioniert der Backup und wird auch übertragen auf den FTP

                              Mach ich das über den importierten VIS Button seh ich im LOG genau diese Zeile auch, aber es passiert nichts.

                              Was vlt auch vielen das einbinden der Raspberrymatic erleichtert:

                              Einmal vom IOBroker über ssh auf den Raspberrymatic verbinden

                              und den ECDSA Fingerprint bestätigen.

                              ssh root@IP-Adresse_des_Raspberrymatic `
                              Die Bestätigung des Fingerprints sollte eigentlich nicht notwendig sein, deshalb habe ich ja ssh-pass verwendet um genau das zu umgehen.

                              @fraeggle:

                              Ich musste in der Backitup.sh folgendes ändern (da ich kein Recht beim Kopieren über sshpass auf das Verzeichnis backups

                              hatte (liegt vlt daran, das der Raspberrymatic auf einem BananaPI läuft, da gibt es den User root in dem Image so nicht): `
                              Wie funktioniert es dann mit den rechten auf dem BananaPi?

                              Wenn man sudo passwd in der Konsole eingiebt was passiert dann?

                              1 Reply Last reply Reply Quote 0
                              • F
                                fraeggle last edited by

                                Hi Steffen,

                                Nachdem ich den Banana mal "Kalt" Rebootet hab funktionieren alle Backups. Root User gibts doch 😢 , allerdings ist der im IOBroker Image nirgends mit PW aufgelistet. Hab ich jetzt geändert 😉

                                Trotz sshpass gehen die Verbindungen vom IOBroker zum Rasperrymatic bei mir erst seit dem austausch des Fingerprint. Aber ist ja nicht weiter

                                tragisch. Falls jemand halt das gleiche Problem hat, kann er es unter Umständen über diesen Weg lösen.

                                UND….. Super Arbeit dieses Script. Jetzt hab ich wenigstens immer genug Backups, vor allem aktuelle ... 😄

                                Danke für die Unterstützung.

                                Gruß Peter

                                1 Reply Last reply Reply Quote 0
                                • Peoples
                                  Peoples last edited by

                                  @fraeggle:

                                  …

                                  Danke für die Unterstützung.

                                  Gruß Peter `

                                  Wenn du mir nochmal die genauen Abläufe/Reihenfolgen/Befehle/Änderungen sagen könntest, würde ich das in die Anleitung mit aufnehmen, denn das würde bestimmt dem Einen oder Anderen helfen

                                  1 Reply Last reply Reply Quote 0
                                  • kmxak
                                    kmxak Most Active last edited by

                                    ich bekomme folgende Fehler wenn ich das Script starte:

                                    javascript.0	2018-05-18 17:21:18.489	error	at ContextifyScript.Script.runInContext (vm.js:35:29)
                                    javascript.0	2018-05-18 17:21:18.489	error	at script.js.User.Verschiedene.Backup:418:1
                                    javascript.0	2018-05-18 17:21:18.488	error	at $ (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:554:34)
                                    javascript.0	2018-05-18 17:21:18.487	error	at Object.getObjectEnumsSync (/opt/iobroker/node_modules/iobroker.javascript/lib/eventObj.js:20:38)
                                    javascript.0	2018-05-18 17:21:18.487	error	ReferenceError: context is not defined
                                    javascript.0	2018-05-18 17:21:18.487	error	^
                                    javascript.0	2018-05-18 17:21:18.487	error	for (let i = 0, l = context.enums.length; i < l; i++) {
                                    javascript.0	2018-05-18 17:21:18.486	error	script.js.User.Verschiedene.Backup: /opt/iobroker/node_modules/iobroker.javascript/lib/eventObj.js:20
                                    

                                    Weiß einer wonach ich genau suchen soll um den Fehler weg zu bekommen?

                                    1 Reply Last reply Reply Quote 0
                                    • F
                                      fraeggle last edited by

                                      @peoples:

                                      @fraeggle:

                                      …

                                      Danke für die Unterstützung.

                                      Gruß Peter `

                                      Wenn du mir nochmal die genauen Abläufe/Reihenfolgen/Befehle/Änderungen sagen könntest, würde ich das in die Anleitung mit aufnehmen, denn das würde bestimmt dem Einen oder Anderen helfen `

                                      Hier ist das was ich zusätzlich zu deiner Anleitung noch gemacht habe. Wie gesagt, war bei mir so, aber vlt hilft das dem einen oder anderen.

                                      Bei FTP-Verbindungen zur Fritzbox muss SSL ausgeschaltet werden.

                                      Am besten einen eigenen USER in der Fritzbox für den Zugriff

                                      auf den angeschlossenen Datenträger anlegen.

                                      Die Datei lftp.conf bearbeiten:

                                      nano /etc/lftp.conf

                                      am Ende folgendes einfügen:

                                      set ftp:ssl-allow false

                                      Für den Zugriff vom IOBroker vom BananaPI zum Raspberrymatic:

                                      sshpass laut Anleitung installieren.

                                      Am besten dem Root vom IOBroker das gleiche PW zuteilen wie auf dem

                                      Raspberrymatic (vereinfacht manche andere Verbindungen aufgrund der

                                      Rechte und dem gleichen PW).

                                      Rechte anpassen (sonst gibt es Probleme beim kopieren des Rapsberrymatic

                                      Image –-> keine Berechtigung):

                                      sudo nano /etc/sudoers

                                      Danach sucht man den folgenden Abschnitt und trägt unterhalb der Zeile, die mit root beginnt,

                                      den gewünschten Benutzer (beim Images des IOBroker für den BananaPI ist es der USER io) ein:

                                      User privilege specification

                                      root ALL=(ALL:ALL) ALL

                                      io ALL=(ALL:ALL) ALL

                                      Einmal vom IOBroker über ssh auf den Raspberrymatic verbinden

                                      und den ECDSA Fingerprint mit yes bestätigen.

                                      ssh root@IP-Adresse_des_Raspberrymatic

                                      Danach am bestens das System herunterfahren und neu booten.

                                      Gruß Peter

                                      1 Reply Last reply Reply Quote 0
                                      • Chaot
                                        Chaot last edited by

                                        Ich habe aktuell drei Probleme:

                                        Bei mir wird unter "/opt/" eine Sicherungsdatei angelegt mit den Rechten "666". Die werden nicht auf den FTP verschoben und sind auch nicht im Ordner "/opt/ioBroker/Backups/" zu finden.

                                        Ein komplettes Backup hat 136.008.581 Bytes und besteht aus ca. 50.000 Dateien.

                                        Ein minimal Backup hat 863.533 Bytes und besteht aus einem Ordner /backup/files/ der leer ist und einer Datei "backup.json" mit 9.335.899 Bytes.

                                        Da fehlen doch irgendwie Daten oder ist die "Minimal" wirklich so minimalistisch?

                                        Auf die Fritzbox als NAS wird das "minimal" ohne Probleme hochgeladen. Das vollständige Backup allerdings nicht.

                                        Beide Einstellung sind identisch mit gleichem User, Ordner und nicht als CIFS Mount (mit CIFS Funktioniert nicht).

                                        ` > javascript.0 2018-05-18 22:11:57.982 info –- Backup-Pfad wurde nicht vom CIFS-Server getrennt ---

                                        javascript.0 2018-05-18 22:11:57.982 info backupiobroker_minimal-2018_05_18-02_00_10.tar.gz

                                        javascript.0 2018-05-18 22:11:57.982 info backupiobroker_komplett-2018_05_18-22_09_05.tar.gz

                                        javascript.0 2018-05-18 22:11:57.982 info backupiobroker_komplett-2018_05_17-23_59_31.tar.gz

                                        javascript.0 2018-05-18 22:11:57.982 info --- Backup-File FTP-Upload ---

                                        javascript.0 2018-05-18 22:11:57.982 info --- Alte Backups entfernen ---

                                        javascript.0 2018-05-18 22:11:57.982 info --- IoBroker gestartet ---

                                        javascript.0 2018-05-18 22:11:57.982 info --- Backup Erstellt ---

                                        javascript.0 2018-05-18 22:11:57.982 info --- Es wurde ein Komplettes Backup gestartet ---

                                        javascript.0 2018-05-18 22:11:57.982 info --- IoBroker gestoppt ---

                                        javascript.0 2018-05-18 22:11:57.982 info --- Backup-Pfad wurde nicht auf CIFS-Server verbunden ---

                                        javascript.0 2018-05-18 22:11:57.982 info script.js.Sicherung.Backup: exec: komplett||5|192.168.xxx||ftpuser|xxxxxx|||NEIN|||| `

                                        1 Reply Last reply Reply Quote 0
                                        • Peoples
                                          Peoples last edited by

                                          @kmxak:

                                          ich bekomme folgende Fehler wenn ich das Script starte:

                                          javascript.0	2018-05-18 17:21:18.489	error	at ContextifyScript.Script.runInContext (vm.js:35:29)
                                          javascript.0	2018-05-18 17:21:18.489	error	at script.js.User.Verschiedene.Backup:418:1
                                          javascript.0	2018-05-18 17:21:18.488	error	at $ (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:554:34)
                                          javascript.0	2018-05-18 17:21:18.487	error	at Object.getObjectEnumsSync (/opt/iobroker/node_modules/iobroker.javascript/lib/eventObj.js:20:38)
                                          javascript.0	2018-05-18 17:21:18.487	error	ReferenceError: context is not defined
                                          javascript.0	2018-05-18 17:21:18.487	error	^
                                          javascript.0	2018-05-18 17:21:18.487	error	for (let i = 0, l = context.enums.length; i < l; i++) {
                                          javascript.0	2018-05-18 17:21:18.486	error	script.js.User.Verschiedene.Backup: /opt/iobroker/node_modules/iobroker.javascript/lib/eventObj.js:20
                                          

                                          Weiß einer wonach ich genau suchen soll um den Fehler weg zu bekommen? `

                                          Hast du den Fehler von Anfang an oder kam der mit der Zeit?

                                          1 Reply Last reply Reply Quote 0
                                          • Peoples
                                            Peoples last edited by

                                            @fraeggle:

                                            @peoples:

                                            @fraeggle:

                                            …

                                            Danke für die Unterstützung.

                                            Gruß Peter `

                                            Wenn du mir nochmal die genauen Abläufe/Reihenfolgen/Befehle/Änderungen sagen könntest, würde ich das in die Anleitung mit aufnehmen, denn das würde bestimmt dem Einen oder Anderen helfen `

                                            Hier ist das was ich zusätzlich zu deiner Anleitung noch gemacht habe. Wie gesagt, war bei mir so, aber vlt hilft das dem einen oder anderen.

                                            Bei FTP-Verbindungen zur Fritzbox muss SSL ausgeschaltet werden.

                                            Am besten einen eigenen USER in der Fritzbox für den Zugriff

                                            auf den angeschlossenen Datenträger anlegen.

                                            Die Datei lftp.conf bearbeiten:

                                            nano /etc/lftp.conf

                                            am Ende folgendes einfügen:

                                            set ftp:ssl-allow false

                                            Für den Zugriff vom IOBroker vom BananaPI zum Raspberrymatic:

                                            sshpass laut Anleitung installieren.

                                            Am besten dem Root vom IOBroker das gleiche PW zuteilen wie auf dem

                                            Raspberrymatic (vereinfacht manche andere Verbindungen aufgrund der

                                            Rechte und dem gleichen PW).

                                            Rechte anpassen (sonst gibt es Probleme beim kopieren des Rapsberrymatic

                                            Image –-> keine Berechtigung):

                                            sudo nano /etc/sudoers

                                            Danach sucht man den folgenden Abschnitt und trägt unterhalb der Zeile, die mit root beginnt,

                                            den gewünschten Benutzer (beim Images des IOBroker für den BananaPI ist es der USER io) ein:

                                            User privilege specification

                                            root ALL=(ALL:ALL) ALL

                                            io ALL=(ALL:ALL) ALL

                                            Einmal vom IOBroker über ssh auf den Raspberrymatic verbinden

                                            und den ECDSA Fingerprint mit yes bestätigen.

                                            ssh root@IP-Adresse_des_Raspberrymatic

                                            Danach am bestens das System herunterfahren und neu booten.

                                            Gruß Peter `

                                            Super Danke!

                                            Ich nehme es in die Anleitung mit auf.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            787
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            18
                                            132
                                            18779
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo