NEWS
[Vorlage] Script für automatisches Backup steuerbar durch VIS
-
Ich hatte Mal wieder das Problem, dass eine Woche nicht gesichert wurde… Ich habe keine Ahnung, warum das Skript Mal aussteigt. Wäre es keine gute Idee, dass Skript automatisch alle x Tage neu starten zu lassen? Ich weiß allerdings nicht, wie ich das im Skript einbauen muss... Oder gibt es die Möglichkeit, über ein 2. Skript ein anderes bei zu starten??
Danke und Grüße, Thorsten
Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk
-
Hallo, bei mir geht es nicht….wie beschrieben benutze ich auch meine Fritte als Nass...und ich habe auch schon erwähnt, das über explorer und ftp tool der zugriff funktioniert...Leider sind die Probleme mit der fritte in den letzten beiträgen untergegangen...
Bevor wieder alles von vorne los geht...mal ne einfache frage::: Hat jemand das Backup zum laufen gebracht mit ner externen Platte über USB an einer Fritzbox? Das wird angezeigt wenn ich den test ausführe:
lftp -u USERNAME,PASSWORT ftp://MEIN.FTPSERVER.net/
-
Ok Leute hab das Backup für die Fritte am laufen…
Wer ein ähnliches Problem hat: Certificate verification problem
In der Datei /etc/lftp.conf folgende Zeile einfügen..
set ssl:verify-certificate no
-
…..
prinzipiell reicht ja eigentlich dieser Befehl für das MySQL-Backup:
mysqldump -u %DBNAME -p%DBPW %DBNAME > /opt/iobroker/backups/$(date +"%d-%b-%Y")_%DBNAME_mysql_db.sql
Habe ich gerade unter eingeloggtem Root-Account getestet und funktioniert bei mir. Als Variable würde man in deinem Script benötigen:
-
Datenbank-Name (DBNAME)
-
Datenbank-Passwort (DBPW) optional
-
Database-Name (DBNAME)
…. `
Hi Kunibert,
bin gerade dabei das mit einzupflegen, dazu habe ich noch Fragen, ich habe in einem anderen Post folgendes gefunden:
Back-UP.png
1. Hier schreibt er im ersten roten Block unter anderem "all-databases", wenn ich das richtig verstehe sichert er alle vorhandenen und bei dir wird sie namentlich genannt oder?
2. Im obigen Script werden zwei Befehle mit der SQL-DB ausgeführt, bei dir ist das nur ein "Einzeiler" reicht der wirklich aus? Da ich kein SQL verwende ist es mit dem testen schwierig.
3. Bei dir sind die Variablen von Datenbank-Name (DBNAME) und DATABASE-Name (auch DBNAME) identisch ist das immer so oder nur bei dir, denn sonst bräuchte man ja nur zwei weitere Variablen. `
Hi Steffen,
vielen Dank fürs Einbauen!
Also, bin auch kein MySQL-Profi und habe mir das zusammenkopiert aber ich versuche es mal.
1. Mein Vorschlag war nur die konkrete ioBroker-Datenbank zu sichern, dazu muss man natürlich wissen wie man sie mal genannt hat. Aus meiner Sicht reicht das Backup, die anderen mySQL-Datenbanken sind ja Standard-Databases, die kein Backup benötigen. Außer natürlich man hat sich weitere Datenbanken angelegt, das würde dann aber meines Erachtens auch über ioBroker hinaus gehen.
2. Die eine Zeile reichte bei mir auf der Kommandozeile. Ich habe jetzt auch nochmal nachgelesen. Im Prinzip ist es ja sehr simpel, wie z. B. hier beschrieben > https://wiki.ubuntuusers.de/MySQL/Backup/. Im Prinzip genügt bei Sicherung aller Datenbanken
mysqldump -u root -p --all-databases > sicherung.sql ````oder wenn man es direkt in das ioBroker-Verzeichnis mit Datum schreiben möchte: ` > mysqldump -u root -p –all-databases > /opt/iobroker/backups/$(date +"%d-%b-%Y")_mysql_db.sql ` Allerdings muss das Passwort des Datenbank-Benutzers mitgegeben werden, das wird auch auf der Kommandozeile abgefragt. Und es werden bei dem Befehl oben alle SQL-Datenbanken in eine Backup-SQL-Datenbank geschrieben, will man daraus einen Restore erzeugen muss man den genauen Datenbanknamen eh kennen und extrahieren. Daher würde ich bei der Zeile wie vorgeschlagen bleiben und damit nur die ioBroker-Datenbank sichern. Oben war tatsächlich aber noch ein Fehler, das erste DB-Name sollte DBUSER heißen und ist der User, dessen Passwort auch als zweite Variable benötigt wird. Und zur Einheitlichkeit mit deinem Skript würde ich das Datum hinter den Backupnamen packen. Richtig also so: ` > mysqldump -u %DBUSER -p%DBPW %DBNAME > /opt/iobroker/backups/backupiobroker_mysql-$(date +"%d-%b-%Y")_%DBNAME_mysql_db_test.sql ` Der Abstand hinter dem -u und der fehlende Abstand hinter -p ist korrekt und funktioniert genau so. Die Variablen sind also: - Datenbank-User (DBUSER) - Passwort des Datenbank-Users (DBPW) - Datenbank-Name (DBNAME) Vielen Dank noch einmal! LG David
-
-
TOP!
Danke
-
Hallo Zusammen,
bei mir wird das Backup nicht mehr ausgeführt, warum weiß und verstehe ich nicht. Die auf dem Pi abgelegtem Backups wurden auch auf den NAS kopiert, aber seit dem 30. wird das Backup nicht mehr erstellt.
anbei einige Screenshots
!
-
VIS:
!
-
im Verzeichnis:
!
-
Weil in den Uhrzeit Datenpunkten Sekunden drin stehen und das ist falsch.
Format muss HH:mm sein
-
Weil in den Uhrzeit Datenpunkten Sekunden drin stehen und das ist falsch.
Format muss HH:mm sein `
hmmm, aber das ist über die Schieberegler nicht umsetzbar. Es öffnet sich bei mir keine Tastatur oder ähnliches… -
Seite 12, müsste der 13te Beitrag von oben sein
-
-
Ich dachte damals weil es bei dem Widget den Hacken bei keine Sekunden gab, dass die dann auch nicht gesetzt werden aber leider ist dem nicht so.
Hab für das neue Vis ein anderes Widget verwendet. Schreib nur noch die Anleitung fertig.
-
Hallo,
möchte mich nochmal mit einer Frage zu dem Thema an euch wenden….Das mit dem Backup und der Vis klappt mittlerweile prima...Aber das Restore bekomme ich nicht hin....
folgendes wird angezeigt... wahrscheinlich mache ich was falsch...Bin mir sicher ihr könnt mir helfen...
root@tinkerboard:/opt/iobroker# tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /
tar (child): backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
root@tinkerboard:/opt/iobroker# "tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /"
-bash: tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /: No such file or directory
root@tinkerboard:/opt/iobroker# "tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /"
-bash: tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /: No such file or directory
-
Hallo,
möchte mich nochmal mit einer Frage zu dem Thema an euch wenden….Das mit dem Backup und der Vis klappt mittlerweile prima...Aber das Restore bekomme ich nicht hin....
folgendes wird angezeigt... wahrscheinlich mache ich was falsch...Bin mir sicher ihr könnt mir helfen...
root@tinkerboard:/opt/iobroker# tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /
tar (child): backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
root@tinkerboard:/opt/iobroker# "tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /"
-bash: tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /: No such file or directory
root@tinkerboard:/opt/iobroker# "tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /"
-bash: tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /: No such file or directory `
Gibt es diese Datei und wo liegt sie? : backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz
Weil die Meldung sagt ja dass es diese nicht gibt. Hast du mal versucht das ganze mit einem voran gestellten sudo zu probieren obwohl du als root eingeloggt bist?
-
hallo, mh leider nicht …mittlerweile habe ich alles neu installiert und die SD Karte nach Fertigstellung geklont... Wenn es mir wieder abschmiert, probiere ich es mal mit dem sudo
Die Datei habe ich wie beschrieben im root Verzeichnis abgelegt...
die Eingabe an sich war bzw. ist aber so korrekt, oder?
root@tinkerboard:/opt/iobroker# tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /
mit sudo
root@tinkerboard:/opt/iobroker# sudo tar -xzvf backupiobroker_komplettAutobackup-2018_04_03-04_00_00.tar.gz -C /
oder felt hier noch irgendein Zeichen oder Leerstelle oder ne Leerstelle zuviel?
Danke sehr vorab…
-
Wenn du Autobackup als Zusatzname hast dann sollte das passen
-
Hallo zusammen.
Bei mir hat sich irgendwo ein Fehler eingeschlichen. Ich hoffe ihr könnt mir helfen:
Wenn ich das Backup über die VIS zu einer bestimmten Uhrzeit starten lassen möchte, wird nicht wie konfiguriert auf dem FTP eine Datei erstellt, sondern local auf dem Raspi im ioBroker/backups/ Verzeichnis. Führe ich den Befehl manuell aus, funktioniert es aber:
bash backup.sh "minimal||10|192.168.178.20|Raspberry|raspberry|password" –-> OK
var Backup = []; // Array für die Definition der Backuptypen und deren Details
Backup[0] = [];
Backup[0][0] = 'minimal'; // Backup Typ (nicht verändern)
Backup[0][1] = ''; // Names Zusatz, wird an den Dateinamen angehängt bspw. Master/Slave (falls gewünscht, ansonsten leer lassen)
Backup[0][2] = '10'; // Alte Backups löschen nach X Tagen (falls gewünscht, ansonsten leer lassen)
Backup[0][3] = '192.168.178.20'; // FTP-Host
Backup[0][4] = 'Raspberry'; // genaue Verzeichnissangabe bspw. /volume1/Backup/ auf FTP-Server (falls gewünscht, ansonsten leer lassen)
Backup[0][5] = 'raspberry'; // Username für FTP - Verbindung
Backup[0][6] = 'password'; // Passwort für FTP - Verbindung
–>NOK
Leider sehe ich im Log lediglich den Eintrag:
javascript.0 2018-04-06 00:42:00.085 info script.js.common.Backup: exec: bash /opt/iobroker/backup.sh minimal 10 Raspberry
Weitere Details oder Fehlermeldungen werden mir nicht angezeigt.
Was könnte der Grund dafür sein?
-
So wie ich das verstanden habe wird das Backup immer auf dem Raspi angelegt und dann erst per FTP transferiert. Das Backup wird nicht direkt auf dem externen Laufwerk angelegt.
-
Danke für den Hinweis. Nichts desto trotz wird bei mir nichts auf den ftp transferiert.
EDIT: Habe den Fehler gefunden. Ich habe mich auf dem NAS beim Ordner verschrieben… Das minimal Backup läuft jetzt durch und wird auch auf den NAS kopiert. Leider läuft das komplett Backup nicht. Es wird leider erst gar nicht erstellt.
Hier das Log:
javascript.0 2018-04-06 09:38:59.417 info --- Backup-File FTP-Upload ---
javascript.0 2018-04-06 09:38:59.417 info --- Alte Backups entfernen ---
javascript.0 2018-04-06 09:38:59.417 info --- Backup Erstellt ---
javascript.0 2018-04-06 09:38:59.417 info --- Es wurde ein Komplettes Backup gestartet ---
javascript.0 2018-04-06 09:38:59.417 info script.js.common.Backup: exec: komplett||10|undefined|undefined|undefined|undefined
javascript.0 2018-04-06 09:35:00.492 info script.js.common.Backup: exec: bash /opt/iobroker/backup.sh komplett 10 undefined
Woher kommt das "undefined"? Die Einstellungen sind die selben wie beim minimal (copy paste zur Sicherheit
)