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.
    • sissiwup
      sissiwup last edited by

      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

      1 Reply Last reply Reply Quote 0
      • M
        mctom last edited by

        Hi,

        danke für deine klasse Anleitung.

        Ich habe es minimal für mich angepasst.

        Wenn ich die backup.sh Datei laufen lasse kommt am Ende folgendes Ergebnis.

        iobroker/node_modules/iobroker/node_modules/yargs/test/_/
        rsync: chown "/mnt/backup/iobroker/node_modules/iobroker/node_modules/yargs/test/_" failed: Permission denied (13)
        rsync: chown "/mnt/backup/iobroker/node_modules/iobroker/node_modules/yargs/test/_/bin.js" failed: Permission denied (13)
        
        sent 642.20K bytes  received 65.25K bytes  14.01K bytes/sec
        total size is 143.70M  speedup is 203.12
        rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1070) [sender=3.0.9]
        Starting ioBroker controller daemon...
        
        

        Jetzt verstehe ich den Punkt

        Permission denied (13) 
        

        und

        rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1070) [sender=3.0.9]"
        

        nicht.

        Sind dies kritische Punkte ?

        Vielen Dank für die Hilfe.

        Gruß

        Michael

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

          Hallo,

          d.h. nur, das rsync auf deinem Zielsystem nicht die user/rechte setzen kann,

          a) schau mal ob die monierten Dateien angekommen sind und welche user/Rechte vergeben wurden.

          b) wenn es dich stört mußt du ein wenig mit den rsync Parametern hantieren: versuch mal rsync mit den Parametern: -rltzuv

          (das -a sagt nämlich bitte alle Rechte und user mitkopieren).

          1 Reply Last reply Reply Quote 0
          • T
            tesso last edited by

            hier mein Skript mit dem ich seit heute ein Backup erstelle und auf mein NAS sichere.

            #!/bin/bash
            export RSYNC_PASSWORD='password'
            
            rsync -aLvzh /opt/iobroker /BackUp/
            iobroker stop
            rsync -aLvzh /opt/iobroker /BackUp/
            iobroker start
            tar -czf /BackUpTar/iobroker.`date "+%F"`.tgz /BackUp
            
            rsync -aLzh /BackUpTar/ root@tessostation::Backup/iobroker/
            
            
            1 Reply Last reply Reply Quote 0
            • B
              Brati last edited by

              Nabend,

              nachdem das letzte js.controller Update 14h Wiederherstellungsarbeit gekostet hat, habe ich die Scripte von hier für mich so zusammen gefasst:

              #!/bin/bash
              umount /mnt/backups
              mount.cifs //xx.xx.178.x/backups /mnt/backups -o user=user,passwd=passwort
              date +%F" "%H":"%M" Backup Anfang" >> /mnt/backups/iobroker/Backup.txt
              rsync -aLvzh --delete /opt/iobroker /opt/backup
              cd /opt/iobroker
              iobroker stop
              rsync -aLvzh /opt/iobroker /opt/backup
              # iobroker start
              cd /opt/backup
              tar -czf /opt/backup/iobroker_`date "+%w"`.tgz iobroker/
              mv *.tgz /mnt/backups/iobroker
              date +%F" "%H":"%M" Backup Ende "%w >> /mnt/backups/iobroker/Backup.txt
              echo >> /mnt/backups/iobroker/Backup.txt
              umount /mnt/backups
              cd /opt/iobroker
              # iobroker restart
              reboot
              
              

              Damit habe ich 7 Dateien auf dem NAS haben, die sich dann nach einer Woche immer überschreiben.

              auf dem PI benötigt man die Ordner:

              /mnt/backups

              /opt/backup

              Auf der Synology:

              /backups/iobroker

              Anlegen geht nach der (Anleitung siehe oben):

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

              Rücksicherung wie folgt:

              • /opt/iobroker Verzeichnis leeren (rm * -r)

              • tgz Datei ins /opt/ Verzeichnis kopieren

              • "tar -xzf iobroker_#.tgz" ausführen (# natürlich ersetzen)

              Update (vom 10.03.16):

              • delete eingefügt, sonst verbleiben gelöschte Dateien
              1 Reply Last reply Reply Quote 0
              • sissiwup
                sissiwup last edited by

                @Brati:

                Nabend,

                nachdem das letzte js.controller Update 14h Wiederherstellungsarbeit gekostet hat, habe ich die Scripte von hier für mich so zusammen gefasst:

                umount /mnt/backups
                mount.cifs //xx.xx.178.x/backups /mnt/backups -o user=user,passwd=passwort
                rsync -aLvzh /opt/iobroker /opt/backup/iobroker
                cd /opt/iobroker
                iobroker stop
                rsync -aLvzh /opt/iobroker /opt/backup/iobroker
                iobroker start
                tar -czf /opt/backup/iobroker_`date "+%w"`.tgz /opt/backup/iobroker
                cd ../backup
                mv *.tgz /mnt/backups/iobroker
                echo -n "Backup erfolgreich." >> /mnt/backups/iobroker/Backup.Nr_`date "+%w"`_vom_`date "+%F"`.txt
                umount /mnt/backups
                
                

                Wenn das alles so funzt, sollte ich 7 Dateien auf dem NAS haben, die sich dann nach einer Woche immer überschreiben. Wie CRON geht weiß ich noch nicht, aber Tante Google wird mir helfen :). Bis gestern hatte ich noch null Ahnung von Linux. `

                Cron siehe oben in meinen ersten Post.
                6558_unbenannt.png
                6558_unbenannt1.png

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

                  @Sissi

                  Genial, hab ich aus Unwissenheit überlesen und ist ja total einfach. Dann sollte ich morgen früh ein Backup mehr haben. Werde mir noch einen Log ins Script basteln und dann kann der nächste Absturz kommen :).

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

                    So, der Ernstfall ist schon da. Die GöGa hat den Strom des Raspi gekappt und VIS will nicht mehr starten. Wenn ich das iobroker Verzeichnis lösche und die tgz Datei einfach entpacke, muss ich dann noch irgendwelche Rechte für die Dateien setzen? Da meckert er nämlich immer beim Überspielen aufs NAS und was müßte ich da eingeben?

                    Update:

                    Backup hat soweit funktioniert, muss am Archiv noch was ändern, weil das mit allen Unterpfaden gepackt ist. Zugriffsrechte stimmen auf jeden Fall, nur alle Adapter waren bei Neustart deaktiviert.

                    Grüße

                    Brati

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

                      wie stelle ich das ganze eigentlich wieder her?

                      bin irgendwie zu doof

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

                        Ich würde auf dem nackten System erst ioBroker installieren.

                        Dann am Besten mit Filezilla den Inhalt des ioBroker Verzeichnisses wieder löschen und die tgz Datei ins opt Verzeichnis kopieren und dann:

                        tar -xzf iobroker_3.tgz
                        

                        oder wie auch immer deine Datei heisst. Oder einfach den mount ausführen und über Putty mit dem "cp" Befehl rüber kopieren und dann entpacken.

                        Wichtig ist nur das deine gepackte Verzeichnisstruktur passt. Ansonsten kann man alles mit "mv" angepasst werden.

                        Grüße

                        Brati

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

                          habe es hinbekommen danke

                          musste allerdings mit reinstall noch mal nach helfen

                          danke

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

                            Hey,

                            es muss doch eine Möglichkeit geben das zu backuppen ohne iobroker zu stoppen und damit die gesamte Home-Automation anzuhalten.

                            Ich nutze die normale Backup-Möglichkeit die meines Wissens nach die "Daten" backups. Der Rest ist dann ja nur noch das aussenrum (was aus den npm-Paketen kommt), oder ?!

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

                              Ich nutze das eh für den täglichen Reboot zu nachtschlafender Zeit und die CCU läuft ja weiter. Was spricht dagegen?

                              Auf jeden Fall funktioniert es, hatte mir letztens mit einer Endlosschleife im Javascript und daraus nicht mehr reagierendem System alles abgeschossen. Den Zustand von morgens herstellen, hat dann 30min gedauert.

                              Grüße

                              Brati

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

                                Hey,

                                täglicher Reboot?

                                Ich arbeite aktuell mit CCU.io und plane gerade den Umstieg auf iobroker. Ich will nicht sagen das das bei ccu.io besser ist (da verlasse ich mich darauf das "ccuio backup" funktioniert … also müsste man sich doch hier auch auf "iobroker backup" verlassen können.

                                Da stimmt mich die Aussage von Bluefox unter http://forum.iobroker.net/viewtopic.php?f=8&t=991#p8350 gerade etwas nachdenklich ...

                                Wenn ich ccu.io/iobroker beende dann bekomme ich keine Events mehr von der CCU und damit verliere ich Daten. Bei Temperaturdaten mag das egal sein aber "Statusdaten" wie Fensteröffnungen, Anwesenheitsinfos und und und sind dann einfach weg. Damit ist Logik die darauf reagiert nach dem Neustart nicht mehr aktuell und das gesamte System trifft ggf Fehlentscheidungen.

                                Heute ist es schon genug Aufwand mal ccu.io oder den CubieTruck neu zu starten und zu schauen das noch alles korrekt ist (Beispiel: Falls jemand kurz vorher zur Haustür rausgelaufen ist wird der 10 Minuten automatisch Tür abschliessen mit Keymatic Timer durch den neustart unterbrochen und die Tür bleibt unverschlossen ... das will ich eigentlich nicht haben). Unter Kontrolle ist das gerade so akzeptabel ... automatisierbar aber schwierig

                                (Ja Nachts um 2 sind einige Dinge eher unwahrscheinlich ... das macht es aber nicht besser 😉 )

                                1 Reply Last reply Reply Quote 0
                                • L
                                  looxer01 last edited by

                                  Hi,

                                  darüber hatte ich ebenfalls nachgedacht.

                                  Meine Lösung war dann nur Delta-BackUps zu machen. Das braucht weniger als eine Minute.

                                  Und natürlich in der Nacht zu einer ausgesuchten Zeit.

                                  Konzeptionell ändert das zwar nichts aber die Auswirkungen sind eher theoretischer Art.

                                  vG Looxer

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

                                    Hab gerade mal nachgeschaut, das Backup legt mir ioBroker für 10min lahm. Ohne Reboot des PI würde es schneller gehen, wenn ich dann noch das Packen und verschieben des Archivs neben ioBroker ausführen lassen würde, vermutlich 1-2min.

                                    Um 04:00 Uhr kann ich damit leben. Wie gesagt, ich habe nicht alles auf ioBroker ausgelagert, vieles erledigen die 60 Programme in der CCU.

                                    Grüße

                                    Brati

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

                                      @Brati:

                                      Nabend,

                                      nachdem das letzte js.controller Update 14h Wiederherstellungsarbeit gekostet hat, habe ich die Scripte von hier für mich so zusammen gefasst:

                                      #!/bin/bash
                                      umount /mnt/backups
                                      mount.cifs //xx.xx.178.x/backups /mnt/backups -o user=user,passwd=passwort
                                      date +%F" "%H":"%M" Backup Anfang" >> /mnt/backups/iobroker/Backup.txt
                                      rsync -aLvzh --delete /opt/iobroker /opt/backup
                                      cd /opt/iobroker
                                      iobroker stop
                                      rsync -aLvzh /opt/iobroker /opt/backup
                                      # iobroker start
                                      cd /opt/backup
                                      tar -czf /opt/backup/iobroker_`date "+%w"`.tgz iobroker/
                                      mv *.tgz /mnt/backups/iobroker
                                      date +%F" "%H":"%M" Backup Ende "%w >> /mnt/backups/iobroker/Backup.txt
                                      echo >> /mnt/backups/iobroker/Backup.txt
                                      umount /mnt/backups
                                      cd /opt/iobroker
                                      # iobroker restart
                                      reboot
                                      
                                      

                                      Damit habe ich 7 Dateien auf dem NAS haben, die sich dann nach einer Woche immer überschreiben.

                                      auf dem PI benötigt man die Ordner:

                                      /mnt/backups

                                      /opt/backup

                                      Auf der Synology

                                      /backups/iobroker

                                      Update (vom 10.03.16):

                                      • delete eingefügt, sonst verbleiben gelöschte Dateien `

                                      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

                                      1 Reply Last reply Reply Quote 0
                                      • 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
                                            • First post
                                              Last post

                                            Support us

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

                                            837
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            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