Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Automatisches Backup

    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

    Automatisches Backup

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

      @RobS:

      Hi Brati, wie und wo legst du eigentlich dieses Script an? Ist noch was zu beachten außer das Anlegen der Ordner, wie von dir beschrieben?

      Gruß, Rob `

      Mahlzeit,

      das hat sissiwup sehr genial beschrieben:

      http://forum.iobroker.de/viewtopic.php? … 798#p10597

      Ich füge mal den Verweis in meinem Post ein.

      Grüße

      Brati

      1 Reply Last reply Reply Quote 0
      • R
        RobS last edited by

        Ok, Danke.

        1 Reply Last reply Reply Quote 0
        • D
          DiJaexxl last edited by

          @sissiwup:

          Hallo,

          hier meine aktuelle Lösung (naja gebranntes Kind):

          Mein NAS lauscht auf 192.168.1.91 und hat eine Freigabe myshare, da liegt ein Unterverzeichnis backup drin, wo sowieso schon alle hinsichern

          Es geht natürlich auch jede Windowsfreigabe, die erreichbar ist.

          im Verzeichnis /opt mit````
          nano backup.sh

          #!/bin/bash
          umount /mnt/myshare
          mount.cifs //192.168.1.91/myshare /mnt/myshare -o user=meinuseraufnas,passwd=meinpasswordaufnas
          rsync -aLvzh /opt/iobroker /mnt/myshare/backup/iobroker
          cd /opt/iobroker
          iobroker stop
          rsync -aLvzh /opt/iobroker /mnt/myshare/backup/iobroker
          cd /opt/iobroker
          iobroker start
          umount /mnt/myshare

          
          backup.sh ausführbar machen:
          

          chmod ugo+rx backup.sh

          
          Warum die Befehle:
          
          Der umount am Anfang, falls ich das mal per Hand gemeountet hatte um sauber zu sein
          
          Dann das mounten der Netzwerkfreigabe.
          
          Anschließend die erste Sicherung, wenn hier etwas schief geht, habt ihr den iobroker noch nicht runtergefahren.
          
          Der sichert alles, ausser Dateien, die gelockt sind.
          
          (Wichtig! Kein "/" hinter iobroker, sonst legt er das Unterverzeichnis nicht an.)
          
          Dann den iobroker stoppen
          
          Jetzt die Sicherung der restlichen paar Dateien, sollte rasend fix gehen (im Sekundenbereich)
          
          Anschließend Neustart des iobrokers
          
          und Aufräumen mit unmount
          
          im Verzeichnis /mnt das Unterverzeichnis myshare = /mnt/myshare anlegen
          
          Und das ganze wird automatisch um 4:00 (= 0 4) gestartet mit
          
          

          nano /etc/crontab

          /etc/crontab: system-wide crontab

          Unlike any other crontab you don't have to run the `crontab'

          command to install the new version when you edit this file

          and files in /etc/cron.d. These files also have username fields,

          that none of the other crontabs do.

          SHELL=/bin/sh
          PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

          m h dom mon dow user command

          17 * * * * root cd / && run-parts --report /etc/cron.hourly
          25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
          47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
          52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
          0 4 * * * root /opt/backup.sh >> /opt/backup.log

          ```` `

          Hallo,

          ich wollte mich an der Scriptidee dran hängen. Da ich aber keine Ahnung habe mal ein paar Fragen:

          In welches Verzeichnis lege ich die backup.sh?

          Wie kann ich händisch die backup.sh aufrufen? mit "sudo backup.sh" (im root) bekomme ich die Fehlermeldung "sudo: backup.sh: command not found"

          1 Reply Last reply Reply Quote 0
          • A
            aquapro last edited by

            Da steht es:

            0  4    * * *   root    /opt/backup.sh >> /opt/backup.log
            

            Also im Verzeichnis

            /opt
            

            aber Du kannst es auch wo anders hinlegen.

            Und da kannst Du es auch ausführen.

            wenn Du im entsprechenden Verzeichnis bist z.B. mit

            ./backup.sh
            

            Gruß

            Tino

            1 Reply Last reply Reply Quote 0
            • D
              DiJaexxl last edited by

              Hallo,

              ich noch einmal, der Ahnungslose 🙂

              Ich für die Befehle im SSH Terminal einzeln aus.

              Mounten läuft, aber bei dem ersten rsync Befehl, hängt sich der Befehl wahrlos auf.

              Es hängt nicht an einer Datei. Was kann ich da tun?

              1 Reply Last reply Reply Quote 0
              • A
                aquapro last edited by

                Kein Problem, wir lernen jeden Tag etwas neues.

                Wie lange hast Du gewartet? Ein erster sync dauert, weil dabei ja alles kopiert werden muss.

                Und was bedeutet bei Dir "hängt sich auf"?

                Gruß

                Tino

                1 Reply Last reply Reply Quote 0
                • D
                  DiJaexxl last edited by

                  Ich meinte es tut sich Minuten lang nix, aber so gar nix.

                  Ich habe nun auf meinem Testsystem (Pi3 ) das Brati Script. Das flubt wie geschnitten Brot.

                  Da es so super läuft, wollte ich das auf meinem Produktivsystem (Cubitruck) nutzen.

                  Wenn ich nun mounten will mit dem Befehl

                  mount.cifs //192.168.178.195/backup /mnt/backup -o user=ioBroker,passwd=xxx
                  
                  

                  bekomme ich den Fehler:

                  -bash: mount.cifs: command not found
                  

                  Genau der gleiche Befehl geht auf dem Pi3 (natürlich mit korektem Password)

                  Goggle sagt: Mach mal:

                  sudo apt-get install nfs-common portmap
                  

                  Han isch auch getan. Gleicher Fehler

                  1 Reply Last reply Reply Quote 0
                  • A
                    aquapro last edited by

                    @DiJaexxl:

                    mount.cifs //192.168.178.195/backup /mnt/backup -o user=ioBroker,passwd=xxx
                    
                    ```` `  
                    

                    Via kopie past hat der wo anders funktioniert?

                    Und damit besser?

                    sudo apt-get install cifs-utils
                    
                    1 Reply Last reply Reply Quote 0
                    • D
                      DiJaexxl last edited by

                      @aquapro:

                      Und damit besser?

                      sudo apt-get install cifs-utils
                      ```` `  
                      

                      Jetzt geht´s

                      1 Reply Last reply Reply Quote 0
                      • A
                        aquapro last edited by

                        super.

                        1 Reply Last reply Reply Quote 0
                        • C
                          charlyphyro last edited by

                          Hallo zusammen,

                          Da an meinem Cubie einen Usb-Stick hängen habe, wird dort direkt die Sicherung eingespielt.

                          Wurde gemischt mit dem Mounten vom externen Datenträger + die Anleitung von Sissiwup.

                          Falls Interesse besteht könnte ich für die Leute die keine NAS haben eine Tutorial erstellen?

                          Viele Grüße & schöne Pfingsten noch 😄

                          1 Reply Last reply Reply Quote 0
                          • C
                            chka last edited by

                            Danke für das tolle script

                            ich drehe gerade am rad, ich bin auf Debian Jessie umgestiegen und wollte jetzt wieder das backup einrichten.

                            allerdings bekomme ich das mounten nicht mehr hin:

                            mount.cifs //XXX/Homematic /mnt -o user=root,passwd=XXX
                            mount error(115): Operation now in progress
                            Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
                            
                            

                            An der Synology hat sich auch nichts geändert, einzig das neuinstallieren auf Jessie

                            Hat jemand eine idee?

                            1 Reply Last reply Reply Quote 0
                            • C
                              chka last edited by

                              habe es gefunden, wieso auch immer geht es nur mit dem netzwerkname

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

                                Mal an die Nutzer gefragt: es sind ja zwei rsyncs da drin - einmal vor und einmal nach dem stoppen des iobroker.

                                Welche files werden denn nach dem stoppen nachgesynct? Sollte doch nur maximal Objects-File und ( falls nicht Redis) das States-file und ggf History file, oder?!

                                Ein iobroker "flush" Befehl der sicherstellt das alle Daten auf dem Datenträger aktuell sind um das Backup zu machen während er läuft.

                                Ich kann mich immer noch nicht mit der "nachts mal abschalten um das Backup zu machen" Idee anfreunden 😉

                                Ingo F

                                1 Reply Last reply Reply Quote 0
                                • B
                                  Brati last edited by

                                  Auf dem NUC läuft das Backup in 10s durch, beim Neustart schlafe ich, also stört es doch nicht. Und gebraucht habe ich es jetzt doch schön öfter. Da freut man sich, wenn das System in 2min wieder läuft.

                                  Keine Ahnung ob man ioBroker wirklich stoppen muss.

                                  Grüße Brati

                                  von unterwegs gesendet.

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

                                    Also ich hab mal genau geschaut … Die FIles die sich zwischen verschiedenen Zeitpunkten ändern sind:

                                    • Logfile (klar, für Backup aber eher unwichtig)

                                    • History-Files (auch klar ... da ist der Stop des iobroker - oder mind des Adapters - wichtig das keine Daten verloren gehen ... oder SQL/Influx)

                                    • iobroker/node_modules/iobroker.js-controller/pids.txt (wohl bei nem neustart eher unwichtig)

                                    • iobroker/iobroker-data/objects.json +.bak (wichtig, wird regelmäßig geschrieben auch ohne änderung)

                                    Am Ende ists als "Nur" das Objects-DB-File ... aber das ändert nachts keiner.

                                    Ich habe nichts gefunden was ewig offen bleibt ...

                                    Also: Gibts denn wirklich (aktuelle) Erfahrungen das ein "Stop" nötig ist weil sonst das Backup nicht tut wenn man es braucht?

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

                                      @Brati:

                                      Auf dem NUC läuft das Backup in 10s durch, beim Neustart schlafe ich, also stört es doch nicht. Und gebraucht habe ich es jetzt doch schön öfter. Da freut man sich, wenn das System in 2min wieder läuft.

                                      Keine Ahnung ob man ioBroker wirklich stoppen muss.

                                      Grüße Brati

                                      von unterwegs gesendet. `
                                      Ob man stoppen muss oder nicht… Es existieren folgende bedenken:

                                      • ich weiß es nicht, falls iob die Datei gerade schreibt, was passiert dann?

                                      • die States werden nur in 30 Sekunden Rhythmus gespeichert.

                                      • falls History aktiviert ist, da werden die Daten noch seltener gespeichert.

                                      Für Objekte gibt es natürlich bak Dateien und die werden automatisch aktiv, falls original nicht in Ordnung ist.

                                      Ich wurde mich freuen, falls jemand eingebaute Backup Funktion testet. Da existieren die Probleme mit schrEiben nicht.

                                      Und falls redis benutzt wird, man kann denn nicht einfach mit Dateikopieren sichern.

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

                                        Hi,

                                        meine Aussagen oben waren mit Nutzung von Redis. Daher waren die States raus. Mit Influx/SQL sind die History-Files relevant. Korrekt.

                                        Ansonsten hast Du recht - ein "gerade am schreiben" ist problematisch, ABER mit der .bak und der echten Datei (nd der Annahme ndas es Nachts keine Objects-Änderungen gibt) sollte das "gerade schreiben" maximal eins der beiden Files betreffen.

                                        Ich mache auch Sicherung mit "iobroker backup" …Habe gesehen das da alles in einer backup.json landet ... das ist natürlich ideal ... Wa sist denn da alles drin?

                                        Ich hatte nur hier und da wenn ich (selten) mal in Prozessliste geschaut habe "iobroker backup" prozesse hängen. Aber was da los war kann wohl keiner sagen 😞

                                        Setze gerade meinen neuen Cubie auf und will dann iobroker dahin "umziehen" (hat ne SSD).Dann versuche ich es mal per "backup" und "restore" und zusätzlich mach ich nen rsync vor dem restore (wegen der ganzen anderen files und so).

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

                                          @sissiwup:

                                          Hallo,

                                          hier meine aktuelle Lösung (naja gebranntes Kind):

                                          Mein NAS lauscht auf 192.168.1.91 und hat eine Freigabe myshare, da liegt ein Unterverzeichnis backup drin, wo sowieso schon alle hinsichern

                                          Es geht natürlich auch jede Windowsfreigabe, die erreichbar ist.

                                          im Verzeichnis /opt mit````
                                          nano backup.sh

                                          #!/bin/bash
                                          umount /mnt/myshare
                                          mount.cifs //192.168.1.91/myshare /mnt/myshare -o user=meinuseraufnas,passwd=meinpasswordaufnas
                                          rsync -aLvzh /opt/iobroker /mnt/myshare/backup/iobroker
                                          cd /opt/iobroker
                                          iobroker stop
                                          rsync -aLvzh /opt/iobroker /mnt/myshare/backup/iobroker
                                          cd /opt/iobroker
                                          iobroker start
                                          umount /mnt/myshare

                                          
                                          backup.sh ausführbar machen:
                                          

                                          chmod ugo+rx backup.sh

                                          
                                          Warum die Befehle:
                                          
                                          Der umount am Anfang, falls ich das mal per Hand gemeountet hatte um sauber zu sein
                                          
                                          Dann das mounten der Netzwerkfreigabe.
                                          
                                          Anschließend die erste Sicherung, wenn hier etwas schief geht, habt ihr den iobroker noch nicht runtergefahren.
                                          
                                          Der sichert alles, ausser Dateien, die gelockt sind.
                                          
                                          (Wichtig! Kein "/" hinter iobroker, sonst legt er das Unterverzeichnis nicht an.)
                                          
                                          Dann den iobroker stoppen
                                          
                                          Jetzt die Sicherung der restlichen paar Dateien, sollte rasend fix gehen (im Sekundenbereich)
                                          
                                          Anschließend Neustart des iobrokers
                                          
                                          und Aufräumen mit unmount
                                          
                                          im Verzeichnis /mnt das Unterverzeichnis myshare = /mnt/myshare anlegen
                                          
                                          Und das ganze wird automatisch um 4:00 (= 0 4) gestartet mit
                                          
                                          

                                          nano /etc/crontab

                                          /etc/crontab: system-wide crontab

                                          Unlike any other crontab you don't have to run the `crontab'

                                          command to install the new version when you edit this file

                                          and files in /etc/cron.d. These files also have username fields,

                                          that none of the other crontabs do.

                                          SHELL=/bin/sh
                                          PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

                                          m h dom mon dow user command

                                          17 * * * * root cd / && run-parts --report /etc/cron.hourly
                                          25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
                                          47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
                                          52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
                                          0 4 * * * root /opt/backup.sh >> /opt/backup.log

                                          ```` `

                                          Hi,

                                          ich stehe auch gerade vor der Entscheidung ein Backup zu machen.

                                          Deine Anleitung habe so gut wie möglich verstanden.

                                          Ich hätte eine Frage dazu:

                                          Wie kann ich denn auf einen Stick oder auf eine Fritzbox sichern.

                                          Kannst du mir das vielleicht erklären.

                                          Gruß totocotonio

                                          1 Reply Last reply Reply Quote 0
                                          • K
                                            Kueppert last edited by

                                            @apollon77:

                                            Hi,

                                            meine Aussagen oben waren mit Nutzung von Redis. Daher waren die States raus. Mit Influx/SQL sind die History-Files relevant. Korrekt.

                                            Ansonsten hast Du recht - ein "gerade am schreiben" ist problematisch, ABER mit der .bak und der echten Datei (nd der Annahme ndas es Nachts keine Objects-Änderungen gibt) sollte das "gerade schreiben" maximal eins der beiden Files betreffen.

                                            Ich mache auch Sicherung mit "iobroker backup" …Habe gesehen das da alles in einer backup.json landet ... das ist natürlich ideal ... Wa sist denn da alles drin?

                                            Ich hatte nur hier und da wenn ich (selten) mal in Prozessliste geschaut habe "iobroker backup" prozesse hängen. Aber was da los war kann wohl keiner sagen 😞

                                            Setze gerade meinen neuen Cubie auf und will dann iobroker dahin "umziehen" (hat ne SSD).Dann versuche ich es mal per "backup" und "restore" und zusätzlich mach ich nen rsync vor dem restore (wegen der ganzen anderen files und so). `

                                            Hi Apollon,

                                            da ich schon viel Arbeit in ioBroker investiert habe, würde ich auch gern einmal "iobroker backup" einschalten/durchführen. Wo finde ich denn diese Option/diesen Adapter??

                                            Wenn es diese Option schon gibt, möchte ich ungern mit Scripten arbeiten oder mit einer Kopie von der SD-Karte. Sicherung findet dann auf meinen NAS statt (denke ich) und der wird nochmal in eine Cloud gesichert (bereits so eingestellt). Somit hätte ich auch ein richtiges Backup 🙂

                                            Danke und Grüße, kueppert

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

                                            Support us

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

                                            419
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            27
                                            71
                                            17458
                                            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