NEWS
[Vorlage] Script für automatisches Backup steuerbar durch VIS
-
Hallo,
Super, danach habe ich schon gesucht.
Als totaler Anfänger ist mir folgende Zeile nicht klar:
das Java-Backup-Script müsst ihr einmal mit "BackupStellen();"(Zeile 96) ausführen um die Objekte für Vis zu erzeugen, dass hier das erstemal Warnigs kommen liegt daran dass die Objekte noch nicht erzeugt sind.
Ich habe das Skript manuell ausgeführt mit sudo und es läuft aber in der Javainstanz habe ich keine Einträge.
Danke
Uwe
-
> Als totaler Anfänger ist mir folgende Zeile nicht klar:
Hi Uwe,
alles kein Thema da hast du was missverstanden oder ich habs schlecht erklärt. Du brauchst nichts in der Konsole ausführen.
Du importierst ja das JavaScript in dein Iobroker unter Scripte, dort gibt es in Zeile 109 oder kurz drüber bzw. drunter :mrgreen: "//BackupStellen();", hier nimmst du die zwei "//" weg uns lässt es einmal durchlaufen (speichern und auf play drücken). Dadurch werden dann die Datenpunkte erstellt. Danach einfach wieder mit "//" auskommentieren.
Wenns noch unklar ist mach ich dir nen Screenshot.
Gruß
Steffen
-
Kann mir jemand helfen?
Ich weiß nicht so ganz was ich tun muss: ein minimal Backup funktioniert problemlos aber das komplette Backup geht garnicht.
Es scheinen Berechtigungen zu fehlen, nur welche? Habe dem kompletten iobroker Ordner + allen Unterordnern schon "777" gegeben….
Es kommt folgende Fehlermeldung:
--- Es wurde ein Komplettes Backup gestartet --- tar: Entferne führende „/“ von Elementnamen tar (child): 2018_01_15-23_42_15-backup_komplett.tar.gz: Funktion open fehlgeschlagen: Keine Berechtigung tar (child): Error is not recoverable: exiting now --- Backup Erstellt --- mv: der Aufruf von stat für „/opt/2018_01_15-23*_komplett.tar.gz“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden --- Alte Backups entfernen --- --- Backup-File FTP-Upload --- Verzeichniswechsel OK, cwd=/backup/ioBroker put: /opt/iobroker/backups/backupiobroker_komplettAuto-2018_01_15-23_42_15.tar.gz: Datei oder Verzeichnis nicht gefunden
-
Moing,
gib mir mal paar mehr Infos, worauf läuft dein Iobroker, welches Linux/Image?
Hast du der Backup.sh auch die Berechtigung gegeben?
Gruß
Steffen
-
sagt dir das was?
javascript.0 2018-01-17 18:48:00.332 error script.js.common.backup: undefined
javascript.0 2018-01-17 18:48:00.331 info script.js.common.backup: exec: bash /opt/iobroker/backup.sh komplett 10
javascript.0 2018-01-17 18:48:00.331 info script.js.common.backup: exec is not available. Please enable "Enable Exec" option in instance settings
javascript.0 2018-01-17 18:48:00.330 error exec is not available. Please enable "Enable Exec" option in instance settings
edit wer lesen kann ist klar im vorteil
-
Hat sich das somit erledigt?
Und hat es auch geklappt?
Gruß
Steffen
-
JA
hat gerade wieder erfolgreich eins erstellt.
Hatte Javascript aktualisiert und nicht in die Einstellungen geguckt.
Werde es jetzt mal wieder die Tage beobachten.
Gruß
-
Erzähl mal bissl genauer :mrgreen:
Du hast den Javascript Adapter "geupdatet" und das hat die Einstellungen verändert?
Wo hast du das dann grade gezogen rein informativ für mich?
Gruß
Steffen
-
Hi,
ich weiß nicht warum, aber mir ist eben der pi3 gefreezed bei dem Versuch ein Backup zu machen. Hab auch exec im Java Script Adapter angeklickt. Das passt.
Lässt jemand hier die Datei via FTP hochladen und kann mir die Einstellungen im Script Posten? Ich lade, bzw Versuche, auf eine Synology zu uppen
Danke und Grüße, Thorsten
Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk
-
Lässt jemand hier die Datei via FTP hochladen und kann mir die Einstellungen im Script Posten? Ich lade, bzw Versuche, auf eine Synology zu uppen `
Ja,
ich mach das so:
// Wichtig! Es dürfen keine Leerzeichen in dem Backup-Array sein wenn kein Eintrag benötigt wird // nur '' verwenden! 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.1.10'; // FTP-Host Backup[0][4] = 'Backup/SmartHome/ioBroker/'; // genaue Verzeichnissangabe bspw. /volume1/Backup/ auf FTP-Server (falls gewünscht, ansonsten leer lassen) Backup[0][5] = 'iobroker'; // Username für FTP - Verbindung Backup[0][6] = '12345678'; // Passwort für FTP - Verbindung Backup[1] = []; Backup[1][0] = 'komplett'; // Backup Typ (nicht verändern) Backup[1][1] = ''; // Names Zusatz, wird an den Dateinamen angehängt bspw. Master/Slave (falls gewünscht, ansonsten leer lassen) Backup[1][2] = '10'; // Alte Backups löschen nach X Tagen (falls gewünscht, ansonsten leer lassen) Backup[1][3] = '192.168.1.10'; // FTP-Host Backup[1][4] = 'Backup/SmartHome/ioBroker'; // genaue Verzeichnissangabe bspw. /volume1/Backup/ auf FTP-Server (falls gewünscht, ansonsten leer lassen) Backup[1][5] = 'iobroker'; // Username für FTP - Verbindung Backup[1][6] = '12345678'; // Passwort für FTP - Verbindung
Welche Javascript Version benutzt du? Weil ich wüsste nicht wo ich das exec anhaken kann?
Gruß
Steffen
-
Ah,
dann muss ich garnicht /volume1/ bei einer Synology im Pfad angeben? Werde ich morgen direkt Mal ändern
Danke und Grüße, Thorsten
Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk
-
Ah,
dann muss ich garnicht /volume1/ bei einer Synology im Pfad angeben? Werde ich morgen direkt Mal ändern `
Also ich habe (bei mir) via ftp einen Login gemacht und von diesem Verzeichnis aus bin ich in mein Wunschverzeichnis. Wie ich es verstehe gibt der benutzer den du verwendest das "Anfangsverzeichnis" vor und deshalb braucht man das Volume1 bei Synology nicht. Da ich aber auch eine alte 413j habe die auch nicht auf dem aktuellen DSM läuft könnte es sein dass sich das geändert hat.
Gruß
Steffen
-
Ah,
dann muss ich garnicht /volume1/ bei einer Synology im Pfad angeben? Werde ich morgen direkt Mal ändern `
Also ich habe (bei mir) via ftp einen Login gemacht und von diesem Verzeichnis aus bin ich in mein Wunschverzeichnis. Wie ich es verstehe gibt der benutzer den du verwendest das "Anfangsverzeichnis" vor und deshalb braucht man das Volume1 bei Synology nicht. Da ich aber auch eine alte 413j habe die auch nicht auf dem aktuellen DSM läuft könnte es sein dass sich das geändert hat.
Gruß
Steffen ` Ah super,
das war die Lösung. Hab volume1/ weggenommen und kann ein Backup auf meinem NAS finden.
Frage: geht hier auch sftp? Hab im Script keinen Port gefunden den ich ändern könnte…
Danke und Grüße, Thorsten
Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk
-
Also wenn du den Befehl "lftp" in der Backup.sh auf den sftp Befehl änderst (den Syntax weiß ich aber nicht) sollte es gehen. Ich habe Anfangs auch ftp probiert, jedoch erfolglos da ich keinen einzeiligen ftp Aufruf in Shell ausgeführt bekommen habe. Daher die Verwendung von lftp.
Gruß
Steffen
-
Moing,
gib mir mal paar mehr Infos, worauf läuft dein Iobroker, welches Linux/Image?
Hast du der Backup.sh auch die Berechtigung gegeben?
Gruß
Steffen `
ioBroker läuft auf einem Raspi3 mit dem fertigen Image von der iobroker webseite, also jessie lite.
berechtigungen 777 habe ich dem script gegeben, sogar dem kompletten iobroker ordner & allen unterordnern (auch wenn das sicher nicht empfohlen ist).
wie gesagt: das kleine backup geht, das komplette backup jedoch nicht ….
-
Hi,
versuch mal folgenden befehl über putty im Verzeichnis /opt/iobroker/ (wo ja auch deine backup.sh liegt) auszuführen:
bash backup.sh "komplett||||||"
und sag mir mal was dabei rauskommt.
Gruß
Steffen
-
Hi,
versuch mal folgenden befehl über putty im Verzeichnis /opt/iobroker/ (wo ja auch deine backup.sh liegt) auszuführen:
bash backup.sh "komplett||||||"
und sag mir mal was dabei rauskommt.
Gruß
Steffen `
Habe das script als root ausgeführt:
--- Es wurde ein Komplettes Backup gestartet --- tar: Entferne führende „/“ von Elementnamen tar: Entferne führende „/“ von Zielen harter Verknüpfungen --- Backup Erstellt --- --- Es werden keine alten Backups geloescht --- --- Backup-File wurde nicht auf ein anderes Verzeichnis kopiert ---
Es hängt wohl am kopieren auf mein NAS…. aber es sind die gleichen Parameter wie beim Minimal Backup im Script eingetragen, und beim Minimal Backup klappt ja alles.
-
Vielleicht hast du irgendwelche Leerzeichen drin oder ein Zeichen vergessen? Kopier dein Script mit verdecktem Passwort Mal hier rein.
Bei mir hat es auch erst nicht geklappt
VG Thorsten
Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk
-
@ringdingringding:Wie machst du das? Steh gerade aufm schlauch mit dem "View in Widget" und dem Schließen-Button `
Ganz einfach, ich habe dir hier zwei View-Exporte mit reingepackt der eine heißt test und der andere test2.
Test wäre die View in der du das ganze ein und ausblenden willst, deshalb hier das Widget. Ein und ausblenden geht über die Sichtbarkeit welche du mit dem durch das Script erstellten Datenpunkt "Backupeinstellungen_sichtbar (true/false)" steuerst.
Test2 ist die eigentliche Konfigurationsview.
Hier der Export von Test:
filename="view_test.txt" index="1">~~Und hier der Export von Test2:
filename="view_test2.txt" index="0">~~Importier die mal und schau mal ob das verständlich ist
Gruß
Steffen ` Hi,
Ich habe test2 importiert und immer wenn ich in die Zeit rein klicke, ändert sich meine Bitte und springt in die Start View. Hast du da irgendwo sowas eingebaut gehabt?
Dachte und Grüße, Thorsten
Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk
-
Habe das script als root ausgeführt:
--- Es wurde ein Komplettes Backup gestartet --- tar: Entferne führende „/“ von Elementnamen tar: Entferne führende „/“ von Zielen harter Verknüpfungen --- Backup Erstellt --- --- Es werden keine alten Backups geloescht --- --- Backup-File wurde nicht auf ein anderes Verzeichnis kopiert ---
Es hängt wohl am kopieren auf mein NAS…. aber es sind die gleichen Parameter wie beim Minimal Backup im Script eingetragen, und beim Minimal Backup klappt ja alles.
Bei mir auch, das Backup wird ausgeführt, auf dem Raspi in Backups auch gespeichert, aber nicht auf die Synology übertragen.
Wie bei Steffen, das kleine Backup wird auf die Synology übertragen.
Gruß Baerny