NEWS
[Vorlage] Backup - Script in der 2ten Version
-
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
-
…
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
-
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?
-
…
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
-
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|||| `
-
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?
-
…
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.
-
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. Das Backup "minimal" kann durchaus so klein sein.
2. Hast du die aktuellen Datein ( backitup.sh und Javascript ) in der aktuellen Version?
3. Hast du die backitup.sh mittels FTP, oder USB-Stick in den Ordner /opt/iobroker auf den RPI gelegt? Nicht über copy & paste !
4. Sind die Rechte der backitup.sh auf 777
5. Existiert der Ordner /opt/iobroker/backups auf dem RPI
-
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. `
Ich weis jetzt nicht ob das von dir ein Tippfehler ist aber der Ordner muss /opt/iobroker/backups/ in klein heissen.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? `
Zum Vergleich würde ich einfach unter /opt/iobroker/ einfach mal "./iobroker backup" ausführen das ist der originale backup befehl von iobroker selbst welcher durch die backitup.sh aufgerufen wird. Das File heißt dann zwar anders aber so hättest du die Größe.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). `
Lösche mal alle kompletten Backups aus dem /opt/iobroker/backups/ Verzeichnis und starte mal ein komplettes via Button.Ich hatte auch schon den Fehler und nach dem löschen war er weg obwohl über die zeit dort wieder mehrere Backups des typs komplett lagen.
-
Nein, das ist kein Schreibfehler.
Ich habe tatsächlich im Ordner "/opt/" Backups liegen.
Wie die dahinkommen kann ich mir auch nicht erklären. Ich habe sie jetzt per Putty und mc gelöscht und werde das mal beobachten.
Unter "/opt/ioBroker/backups/" liegen ganz normal die Backups.
Mit der Größe muss ich mal austesten.
Mit deinem Befehl kommt
pi@Haus:/opt/iobroker $ ./iobroker backup ./iobroker: Zeile 1: 416 Getötet node node_modules/iobroker.js-controller/iobroker.js $1 $2 $3 $4 $5
Löschen werde ich morgen mal testen
Edit sagt:
Löschen hat funktioniert.
Die Dateien unter "/opt/" scheinen fehlgeschlagene Backups zu sein. Ich habe eben beobachtet das das Backup zuerst dort geschrieben wird bevor es in der Ordner "/opt/iobroker/backups/" geschoben wird.
-
pi@Haus:/opt/iobroker $ ./iobroker backup ./iobroker: Zeile 1: 416 Getötet node node_modules/iobroker.js-controller/iobroker.js $1 $2 $3 $4 $5 ```` `
Das ist wirklich komisch, denn das ist der Backupbefehl der original in iobroker implementiert ist.
-
pi@Haus:/opt/iobroker $ ./iobroker backup ./iobroker: Zeile 1: 416 Getötet node node_modules/iobroker.js-controller/iobroker.js $1 $2 $3 $4 $5 ```` `
Das ist wirklich komisch, denn das ist der Backupbefehl der original in iobroker implementiert ist.
Könnte es vielleicht am fehlen des exec-Befehles liegen, den man im js-Modul eingeben muss?
Beziehungsweise was bei mir bislang meistens bei Problemen geholfen hat ist ein kompletter, sauberer Reboot des RPI.
Gesendet von iPhone mit Tapatalk
-
pi@Haus:/opt/iobroker $ ./iobroker backup ./iobroker: Zeile 1: 416 Getötet node node_modules/iobroker.js-controller/iobroker.js $1 $2 $3 $4 $5 ```` `
Das ist wirklich komisch, denn das ist der Backupbefehl der original in iobroker implementiert ist.
Könnte es vielleicht am fehlen des exec-Befehles liegen, den man im js-Modul eingeben muss?
Beziehungsweise was bei mir bislang meistens bei Problemen geholfen hat ist ein kompletter, sauberer Reboot des RPI. `
Den Exec-Befehl braucht nur das Javascript zum Ausführen des Backupscripts. Das iobroker eigene Backup eigentlich nicht. -
Was passiert denn wenn du das Backup uber die Konsole mit deinen Parametern direkt ausführst? Da erkennst du am schnellsten, ob es Probleme mit Berechtigungen gibt.
z.B.:
bash /opt/iobroker/backitup.sh "raspberrymatic||5|192.168.xxx.xxx||USER|PW1|192.168.xxx.xxx|PW2|NEIN||||"
(nicht genau diesen nehmen, dieser ist für Raspberrymatic, aber du siehst den richtigen String im LOG vom javascript)
Gruß Peter
-
Guten Abend zusammen,
die Funktionalität des ioBrokers als Erweiterung zur bestehenden HM-Welt und den damit verbundenen Möglichkeiten hat faszinierende Elemente.
Nachdem die Anbindung und die ersten Schritte getan sind beschäftigt mich das Thema Sicherung um die bereits erfolgte und um die zukünftige Einrichtung auch für den Ernstfall gesichert zu haben.
Entsprechend der Anleitung wurde die Einrichtung vorgenommen. An dieser Stelle vielen Dank für Scripte und Anleitung.
Zum Einsatz kommen
Raspberrymatic 2.31.25.20180428
ioBroker 3.3.5
2x Pi3B
Backitup-Script-Set_Stand_10.05.2018.zip
Was bisher funktioniert
Standard Backup aus VIS inklusiv kopieren auf NAS per ftp
Komplett Backup, jedoch nur über Konsolausführung inklusiv kopieren auf NAS
Raspberrymatic Backup, über VIS + Konsole -> jedoch kein Kopieren auf NAS (Funktion nach Umsetzung des Hinweis: "Einmal vom IOBroker über ssh auf den Raspberrymatic verbinden und den ECDSA Fingerprint bestätigen per ssh root@IP-Adresse_des_Raspberrymatic" von Peter alias fraeggle)
Was nicht funktioniert
Komplett Backup per VIS
Ebenso kann ich die Timer nicht zur Zusammenarbeit bewegen.
Der Status des Button "Komplett Backup" bleibt nach erstmaligen ausführen auf Status "Komplett Backup wird erstellt". Hier hat auch der Neustart des kpl. Systems keine Abhilfe gebracht.
Frage: Die Backups liegen alle im Verzeichnis /opt/iobroker/backups und scheinen da auch zu verbleiben obwohl hier bereits 5 alte des gleichen Typs vorhanden sind. Sollte hier nicht das älteste gelöscht werden?
Wäre prima, wenn es mit Eurer fachkundigen Unterstützung gelingt die volle Funktionalität zu bekommen. Vielen Dank.
Jürgen
-
Der Status des Button "Komplett Backup" bleibt nach erstmaligen ausführen auf Status "Komplett Backup wird erstellt". Hier hat auch der Neustart des kpl. Systems keine Abhilfe gebracht.
Frage: Die Backups liegen alle im Verzeichnis /opt/iobroker/backups und scheinen da auch zu verbleiben obwohl hier bereits 5 alte des gleichen Typs vorhanden sind. Sollte hier nicht das älteste gelöscht werden? `
Hi Jürgen
ich hatte beim komplett Backup das Problem, dass der erst ausgeführt wurde, als ich in dem Backitup.sh in der Sektion
Erstellen des kompletten Backups den IOBroker Stop und Restart auskommentiert hab. (Aber bitte das Shell Script NICHT über Windows
bearbeiten, sondern direkt auf dem Linux System).
Das löschen hab ich noch nicht beobachtet…..
Gruß Peter
-
Hallo Peter,
vielen Dank für Deinen Lösungsansatz. Habe die beiden Punkte direkt über Nano auskommentiert. System kpl. neu gestartet. Leider ohne Verbesserung.
-
Standard-Backup über VIS funktioniert incl. Kopie auf NAS
-
Raspberry-Backup über VIS funktioniert jedoch ohne Kopie auf NAS (LOG zeigt keine Auffälligkeiten, FTP-Daten sind indentisch mit den Standard-Backup).
Was hier wundert ist, dass die erzeugte Raspberry-Backupdatei nur die Berechtigung 600 hat. Hier fehlt mir einfach noch die notwendige Linux-Praxis. Kann das die Ursache sein, dass die Kopie auf dem NAS nicht erzeugt werden kann?
- Komplett-Backup aus VIS ohne Funktion.
Es fehlt mir auch noch ein Ansatz, warum der Button "Komplett-Backup" beharrlich auf dem Status "Komplett Backup wird erstellt" bleibt. Evtl. wäre das ja auch der Grund warum sich über VIS kein Komplett-Backup starten lässt. Zum Komplett-Backup gibt es auch keinerlei LOG-Einträge, was im Umkehrschluss sicher bedeutet, es wird auch keine Aktion ausgelöst.
Wird das Komplett-Backup über die Konsole gestartet, läuft der Ablauf incl. Kopie auf NAS fehlerfrei durch.
Bin über jeden weiteren Hinweis dankbar.
Wünsche noch einen schönen Abend.
Jürgen
-
-
- Raspberry-Backup über VIS funktioniert jedoch ohne Kopie auf NAS (LOG zeigt keine Auffälligkeiten, FTP-Daten sind indentisch mit den Standard-Backup). `
Da bist du nicht der einzige, bei dem das nicht funktioniert, bin am suchen woran das liegen könnte! Du hast aber nicht zufällig am gleichen Tag mehrere Versuche durchgeführt (Backups erstellt) oder? Es wird nämlich immer der Dateiname zusammengesetzt aus dem aktuellen Tagesdatum für das weiterkopieren verwendet und wenn es diesen öffter gibt geht es nicht.
@HMHAJUE:
- Komplett-Backup aus VIS ohne Funktion.
Es fehlt mir auch noch ein Ansatz, warum der Button "Komplett-Backup" beharrlich auf dem Status "Komplett Backup wird erstellt" bleibt. Evtl. wäre das ja auch der Grund warum sich über VIS kein Komplett-Backup starten lässt. Zum Komplett-Backup gibt es auch keinerlei LOG-Einträge, was im Umkehrschluss sicher bedeutet, es wird auch keine Aktion ausgelöst. `
Richtig!Der Fehler wurde ich glaube zwei Seiten vorher schon behandelt, hast du bestimmt überlesen. Der Fehler kommt dadurch, dass früher das Komplette Backup keinen stop des Iobrokers beinhaltete und ich den Button nach dem drücken über einen Datenpunkt für 20 Sekunden auf "wird ausgeführt" setze. Innerhalb dieser 20 Sekunden wird jedoch der iobroker gestoppt und dadurch geht der zurücksetzen Befehl verlohren.
Entweder du kommentierst in der backitup.sh den iobroker stop/start/restart aus oder du änderst im Javascript die Zeit die eingestellt ist bis der Status wieder auf false geht von 20000 auf 2000 (20 sek auf 2 sek)
setStateDelayed(instanz + pfad0 + 'start_komplett_Backup', false, 2000);
Achja den Datenpunkt start_komplett_Backup noch händisch auf false setzen dann sollte das gehen.
- Raspberry-Backup über VIS funktioniert jedoch ohne Kopie auf NAS (LOG zeigt keine Auffälligkeiten, FTP-Daten sind indentisch mit den Standard-Backup). `
-
Guten Abend Steffen,
kurzes Feedback zum aktuellen Stand.
-
alle 3 Backuptypen lassen sich jetzt manuell aus VIS starten
-
alle 3 Backuptypen funktionieren jetzt auch per Timer
Funktiontest mit auskommentierten Stop/Start des io Brokers. Habe jetzt im Anschluss dies rückgängig gemacht und die Zeit entsprechend Deinem Vorschlag auf 2 sek. geändert und den Timer für morgen gesetzt. Ich gehe davon aus, dass dies jetzt auch funktioniert.
Schön wäre, wenn es Dir gelingt noch eine Lösung für die Kopie des Raspmatic-Backup auf das NAS zu finden, ist aber sicher nicht lebensnotwendig.
An dieser Stelle nochmals vielen Dank!
Gruß
Jürgen
-
-
Schön wäre, wenn es Dir gelingt noch eine Lösung für die Kopie des Raspmatic-Backup auf das NAS zu finden `
Da sind wir dran