Sicherung automatisch anlegen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Benutzeravatar
Snatsch
Beiträge: 455
Registriert: 9. Jan 2021 22:55
Answers: 0

Sicherung automatisch anlegen

Beitrag von Snatsch »

Hallo,
ich würde mein System gerne einmal in der Woche Automatisch sichern. Jetzt habe ich schon mehrere Webseiten versucht ein Crontab zu generieren. :?:
Ich würde gerne das sich mein openhab jeden Donnerstag Nacht um 3 automatisch sichert. Ist das so richtig angelegt und würde funktionieren ?

Code: Alles auswählen

* 3 */5 * * /home/openhabian/backup.sh > /dev/null
Vielen Dank für eure Hilfe.
openhab4.3.1 auf Pi 5 8GB im Docker Portainer&Frontail /Grafana&InfluxDB und mosquitto auf Pi 3 in Docker Portainer/Pi 3 mit Docker zur Datensicherung / Pi 4 4GB Portainer & Deconz

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Sicherung automatisch anlegen

Beitrag von udo1toni »

Nein, das ist Quatsch.

Der korrekte crontab Eintrag muss für drei Uhr so aussehen:

Code: Alles auswählen

0 3 * * 4 /home/openhabian/backup.sh > /dev/null
crontab erwartet als ersten Parameter die Minute, dann die Stunde, den Tag im Monat, den Monat und zum Schluss den Wochentag. Ein Stern steht für "beliebig", im Feld Wochentag können Ziffern 0 bis 7 verwendet werden, wobei 0 und 7 Sonntag bedeuten.
Der obige crontab Ausdruck ist als "jeden Donnerstag um 03:00 Uhr" zu lesen. Alles nach dem fünften nicht zusammenhängenden Leerzeichen wird als auszuführendes Script mit eventuellen Parametern gewertet.

Ich bin mir nicht sicher, ob der User openhabian das Backup überhaupt so ohne Weiteres ausführen darf. Funktioniert der Scriptbefehl an der Kommandozeile, wenn der User openhabian angemeldet ist?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Benutzeravatar
Snatsch
Beiträge: 455
Registriert: 9. Jan 2021 22:55
Answers: 0

Re: Sicherung automatisch anlegen

Beitrag von Snatsch »

Hallo udo1toni,
die Sicherung klappt nur hatte ich es bis jetzt jede Nacht um 3. Da das aber für mich Quatsch ist reicht mir die Sicherung 1 mal in der Woche.
openhab4.3.1 auf Pi 5 8GB im Docker Portainer&Frontail /Grafana&InfluxDB und mosquitto auf Pi 3 in Docker Portainer/Pi 3 mit Docker zur Datensicherung / Pi 4 4GB Portainer & Deconz

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Sicherung automatisch anlegen

Beitrag von udo1toni »

Prima, dann sollte es jetzt ja passen :)
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Benutzeravatar
SmartDave
Beiträge: 9
Registriert: 28. Aug 2022 10:49
Answers: 0

Re: Sicherung automatisch anlegen

Beitrag von SmartDave »

Weshalb funktioniert es nicht so?:

Code: Alles auswählen

0 05    * * *  root     openhab-cli backup --full /media/BackUp/$(date +"%y%m%d")_BackUp-OpenHAB.zip >/dev/null
Als Kommando wird es ausgeführt aber nicht via cron!?

Hingegen:

Code: Alles auswählen

0 06    * * *  root     influxd backup /media/BackUp >/dev/null

Code: Alles auswählen

15 06   * * *  root     influxd backup -database openhab /media/BackUp >/dev/null
funktioniert!
Setup: Raspberry Pi 4, 4GB RAM, 256GB SSD, openHAB 4.0.0 - Release Build

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Sicherung automatisch anlegen

Beitrag von udo1toni »

Gewöhnlich gibt man immer den kompletten Pfad an, also eher

Code: Alles auswählen

0 05    * * *  root /usr/bin/openhab-cli backup --full /media/BackUp/$(date +"%y%m%d")_BackUp-OpenHAB.zip >/dev/null
Bist Du sicher, dass dieser Ausdruck

Code: Alles auswählen

$(date +"%y%m%d")
tatsächlich korrekt ist?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Benutzeravatar
SmartDave
Beiträge: 9
Registriert: 28. Aug 2022 10:49
Answers: 0

Re: Sicherung automatisch anlegen

Beitrag von SmartDave »

Alles klar, danke!
Ich habe die Sache jetzt via Script gelöst.
Setup: Raspberry Pi 4, 4GB RAM, 256GB SSD, openHAB 4.0.0 - Release Build

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Sicherung automatisch anlegen

Beitrag von udo1toni »

Ja, auch eine Möglichkeit :)
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

ollyins
Beiträge: 49
Registriert: 17. Jul 2022 23:34
Answers: 0

Re: Sicherung automatisch anlegen

Beitrag von ollyins »

Hi,
ich habe oh3 in containerstation auf dem qnap laufen - 1a ! ich habe die entsprechenden Verzeichnisse

- /share/Container/openhab/addons/:/openhab/addons
- /share/Container/openhab/conf/:/openhab/conf
- /share/Container/openhab/userdata/:/openhab/userdata

gemappt, stoße nun aber auf 2 probleme:
1. ich finde in userdata ein backup verzeichnis mit tar dateien : userdata-2022-08-18T19-35-54.tar
ich weiß aber nicht, wie ich das jemals gemacht habe . evt, schon alzheimer.. aber das muss irgendwie automatisch erfolgt sein.
in userdata/jsondb gibt es auch noch einen ordner backup.. das sind nur json files drin und ich denke mal ddas sind uner anderem die backups der angelegten widgets etc..
ich habe keine openhab-cli gefunden.. nicht in /usr/bin oder sonstwo
ich kann ja die kompletten folder sichern manuell.. aber ginge es nicht auch automatisch wieder wie schon vorher?
Die gemappten Folder werden ja von neueren oh3 versionen direkt integriert, also nciht übershrieben, wenn ich ein neues build mache, aber ich würde sie trotzdem gerne noch irgendwie sichern und eben auch ein backup notfalls wieder restore.
2. Ich finde keine Info wo der oftr für widget icons verwendete ordner /static/icons sein soll... ich dachte die icons werden automatisch aus dem classic ordner gezogen, da habe ich alles neue reingepackt.. muss ich den analog wie oben extra anlegen, also
- /share/Container/openhab/userdata/:/openhab/static/icons
?

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Sicherung automatisch anlegen

Beitrag von udo1toni »

Es gibt in openHAB grundsätzlich zwei verschiedene Backups.

Das eine Backup dient der Möglichkeit, Änderungen rückgängig zu machen. Zu diesem Zweck wird bei Änderungen über die UI die entsprechende json-Datei (sic!) in den im gleichen Verzeichnis liegenden Backup Ordner kopiert (userdata/jsondb/backup/). Ist diese Datei dort schon vorhanden, wird diese Datei zuvor umbenannt. Ist der Name schon besetzt (es bestehen schon zwei Kopien), wird auch diese Datei umbenannt usw..
Existieren bereits 5 Kopien, wird die älteste gelöscht (Der Wert 5 ist einstellbar). Man kann also die letzten 5 Änderungen rückgängig machen, indem man openHAB stoppt und die älteste entsprechende json-Datei aus dem Backup-Verzeichnis in das darüberliegende Verzeichnis jsondb verschiebt oder kopiert, das Original dort löscht und die Datei entsprechend umbenennt. Leider ist bisher in der UI noch keine entsprechende Undo Funktion integriert, nur wenigen Anwendern ist überhaupt bewusst, dass openHAB hier Sicherheitskopien aufbewahrt. Fünf Schritte sind auch nicht sonderlich viel...

Das andere Backup dient der Sicherung aller Konfigurationsdaten und der internen Persistence (also rrd4j und evtl. mapdb, falls zusätzlich eingerichtet).
Diese Daten werden beim Aufruf von openhab-cli backup in den Ordner userdata/backup/ als Archiv abgelegt. Gewöhnlich sollte openHAB von dem Archiv (tar) ein zip erzeugen, es kann aber sein, dass im Docker Container hier andere Wege beschritten werden. Im Docker Container steht kein openhab-cli zur Verfügung.
Falls Du Deine Konfiguration mal von einem anderen System übernommen hast, kann es sein, dass der Inhalt des Ordners userdata/backup/ nur Reste eines alten Backups enthält. So oder so kannst Du das Archiv löschen (oder auch sichern, den Inhalt anschauen, whatever...), für den Betrieb von openHAB spielt es keine Rolle.

Meines Wissens gibt es direkt im Docker Container keine Funktion, um ein Backup zu erstellen. Das ist aber auch unnötig, denn beim Docker Container werden Backups nun mal gewöhnlich auf anderem Weg erstellt, also indem die Volumes extern gesichert werden. Der Vorteil dabei ist, dass Du viel mehr Möglichkeiten für die Sicherung hast, als im Docker Container direkt. Ich gehe davon aus, dass es dafür auch extra Container gibt :) Ansonsten kannst Du die Volumes auch im qnap selbst sichern lassen, dort gibt es ja auch einen Scheduler für solche Aufgaben.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Antworten