CCU2 - Skript für automatisches Backup

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

SMA
Beiträge: 95
Registriert: 16.04.2015, 13:28

Re: CCU2 - Skript für automatisches Backup

Beitrag von SMA » 24.01.2016, 22:45

TSNr1 hat geschrieben:Super vielen Dank für deine schnelle und präzise Hilfe.
Damit bin ich schonmal viel weiter. funktionieren tut es soweit auch. Aber wenn ich keine Unterverzeichnisse wähle.
SMA hat geschrieben: Jetzt bin ich mir nicht ganz sicher, aber ich meine du müsstest das Verzeichnis, in dass das Backup soll, vorher noch per Hand erstellen. Ansonsten würde es mit einem Fehler enden, da es nicht vorhanden ist.
Und genau da liegt jetzt mein Problem. wie krieg ich das hin?
Wenn ich die Ordner über den PC anlege und die Karte in die CCU stecke, muss ich initialisieren und damit sind sie wieder weg!

gibt es einen Befehl um über CUXD die ordner zu erzeugen? oder wie mache ich das!

Sorry und DANKE
TSNr1
Uff, ob es da im CUxD die Möglichkeit gibt weiß ich nicht. Du kannst aber den ssh-Zugang in der CCU aktivieren und dich mit einer terminal app deiner Wahl dann auf die CCU verbinden. Anschließend kannst du dann den gewünschten Ordner auf deiner SD-Karte erstellen.

Code: Alles auswählen

ssh ccu-ip -l root
passwort eingeben
mkdir /mnt/ordnerdeinerwahl
Privat
1 Kanäle in 1 Geräten und 16 CUxD-Kanäle in 1 CUxD-Geräten:
1x CUX28, 1x HM-Sec-SCo


Ehemalig studentische Projektgruppe
Übersicht des Haus-Projekts (Neubau)
1x CCU2 (Untergeschoss/Stahlbau) || 2x LAN-Gateway (Erdgeschoss/Dachgeschoss)

527 Kanäle in 238 Geräten und 64 CUxD-Kanäle in 17 CUxD-Geräten:
9x HM-Sen-MDIR-O-2, 16x CUX90, 12x HM-LC-Sw2-FM, 18x HM-PB-6-WM55, 33x HM-Sec-SCo, 21x HM-Sec-SD, 19x HM-LC-Bl1PBU-FM, 24x HM-LC-Sw1PBU-FM, 16x HM-TC-IT-WM-W-EU, 19x HM-LC-Sw1-FM, 9x HM-PBI-4-FM, 3x HM-Sec-SD-Team, 1x HM-Sec-TiS, 10x HM-Sec-SC-2, 3x HM-CC-VG-1, 5x HM-Sec-MDIR-2, 2x HM-LC-Sw4-SM, 1x HM-Sen-Wa-Od, 5x HM-LC-RGBW-WM, 1x CUX28, 1x HM-Sen-EP, 3x HM-LC-Dim1T-FM, 1x HM-LC-Sw4-DR, 1x HM-LC-Dim1TPBU-FM, 2x HM-WDS10-TH-O, 1x HM-Sec-WDS-2, 2x HM-ES-PMSw1-Pl, 14x HMW-LC-Sw2-DR, 1x HM-WDS100-C6-O, 2x HMW-IO-12-Sw7-DR

Benutzeravatar
uwe111
Beiträge: 4820
Registriert: 26.02.2011, 22:22
Hat sich bedankt: 3 Mal
Danksagung erhalten: 246 Mal
Kontaktdaten:

Re: CCU2 - Skript für automatisches Backup

Beitrag von uwe111 » 24.01.2016, 23:08

SMA hat geschrieben:Uff, ob es da im CUxD die Möglichkeit gibt weiß ich nicht.
Ja, auf der CUxD-Statusseite gibt es einen Button "SERVICE" und dort kannst Du ein beliebiges "Shell command" eingeben.
Aber per SSH geht's natürlich auch.
TSNr1 hat geschrieben: Wenn ich die Ordner über den PC anlege und die Karte in die CCU stecke, muss ich initialisieren und damit sind sie wieder weg!
Nachdem die SD-Karte auf der CCU initialisiert wurde, kannst Du das Verzeichnis auch über den PC anlegen. Danach muss die SD-Karte dann auf der CCU nicht erneut initialisiert werden.

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.11, SSH KeyDir

pruse
Beiträge: 223
Registriert: 03.02.2012, 22:41

Re: CCU2 - Skript für automatisches Backup

Beitrag von pruse » 31.01.2016, 11:23

Hallo,
gibt es eine Möglichkeit das Backup auf einem Nas-Server oder USB Stick an der FritzBox wo man sich mit Benutzer und Passwort anmelden muss automatisch abzuspeichern.

Gruß Jens
LXCCU im Standby,Yahm auf Raspberry Pi3, 3xHomeduino, 1xHM-Sen-LI-O, 1xHM-WDS10-TH-O, 1xHM-PBI-4-FM, 4xHM-LC-Bl1-FM, 3xHM-LC-Sw1-FM, 2xHM-WDS40-TH-I,
2x HM-Sen-MDIR-O, 6xHMW-IO-12-Sw14-DR, 1xHM-RC-4-2, 1xHM-LC-Sw4-PCB, 1xHM-ES-PMSw1-Pl, 1xHM-WDS30-OT2-SM,
1xHM-LC-Bl1PBU-FM, 1xHM-WDS30-T-O, 1xHM-TC-IT-WM-W-EU, 1xHM-Sen-MDIR-WM55, 1xHM-LC-Bl1PBU-FM

methodus
Beiträge: 67
Registriert: 05.07.2011, 20:17

Re: CCU2 - Skript für automatisches Backup

Beitrag von methodus » 19.02.2017, 19:20

Ich habe die Script-Datei zum automatischen Upload der CCU2-Backups von hier http://www.lxccu.com/manuals:manual-ccu2-backup angepasst, damit es die Backups bei Google Drive hochlädt.

Leider ist der Weg dahin ziemlich steinig, da man sich viele Parameter erst besorgen muss. Die Parameter user und password richtet man sich weiterhin in der CCU ein. Die ganzen drive*-Parameter sind allerdings neu und bedeuten folgendes:
  • driveFolder: Ordner in Google Drive, in dem die Backups hochgeladen werden sollen.
  • driveClientId: OAuth2-ClientID für die Anmeldung in Google Drive
  • driveClientSecret: Oauth2-ClientSecret
  • driveRefreshToken: OAuth2-Refreshtoken für die Beschaffung eines Auth-Tokens zur Anmeldung.
Fangen wir mit dem leichtesten an. Die driveFolder-ID bekommt man über die URL (blau markiert) von Google Drive heraus:
Clipboard01.jpg
Clipboard01.jpg (15.35 KiB) 2519 mal betrachtet
Als nächstes benötigen wir die ClientID und das ClientSecret. Dazu meldet man sich in der Google Developer Konsole an: https://console.developers.google.com
Ich empfehle hier ein neues Projekt anzulegen, z.B. Homematic.

Klickt nun im Reiter Zugangsdaten, Anmeldedaten auf Anmeldedaten erstellen und da auf OAuth-Client-ID:
Clipboard02.jpg
Wählt nun Webanwendung aus und vergebt einen Namen. Unten müsst ihr noch die authorisierten Redirect-URLs angeben. Diese URL muss mit der später verwendeten Redirect-URL übereinstimmen, sonst klappt die Authentifizierung nicht:
Clipboard03.jpg
Mit diesen Daten holen wir uns nun einen OAuth2-Code. Hierfür müssen wir zunächst den Zugriff auf Google Drive erlauben. Dies erfolgt über eine URL in der ihr eure ClientID einfügt, die Redirect-URL prüft und am Anfang noch den Slash entfernt (sonst wird die URL hier nicht vollständig angezeigt):
https:\//accounts.google.com/o/oauth2/v2/auth?scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive&access_type=offline&redirect_uri=https%3A%2F%2Fdenis-loh.com%2Ftoken&response_type=code&client_id=<DEINE CLIENT ID>

Wenn ihr diese URL aufgerufen habt und die Erlaubnis für den Zugriff auf Drive erlaubt habt, werdet ihr zur Redirect-URL weitergeleitet. Hier kopiert ihr den Code aus der URL heraus. Die URL sieht in etwa dann so aus:

Code: Alles auswählen

https://oauth2.example.com/auth?code=4/P7q7W91a-oMsCeLvIaQm6bTrgtp7
Nun benötigt ihr einen REST-Client mit dem ihr POST-Requests abschicken könnt. Ich nutze dazu das RESTlet-Plugin für Chrome. Gebt die Daten wie im Screenshot angezeigt ein:
Clipboard04.jpg
Sobald ihr den Request abschickt, erhaltet ihr erstmalig einen Auth-Token und Refresh-Token. Der Refresh-Token ist das was euch noch fehlt.
Clipboard05.jpg
Ihr könnt den Refresh-Token testen, in dem ihr damit ein neues Auth-Token beschafft. Nutzt dazu folgenden Request:
Clipboard06.jpg
Tragt nun die ganzen IDs, Secrets, Token usw. in die Script-Datei oben ein und packt sie auf die CCU. Ich habe über einen Cron-Job so eingerichtet, dass es einmal nächtlich läuft.

Bei Google Drive hat man 15GB an Speicher, das sollte für ein paar Backups reichen.
Dateianhänge
ccu2backup.sh.txt
(2.88 KiB) 129-mal heruntergeladen

darkiop
Beiträge: 143
Registriert: 22.11.2013, 10:53

Re: CCU2 - Skript für automatisches Backup

Beitrag von darkiop » 28.06.2017, 13:57

Hallo, ich bin gerade dabei über einen anderen Ansatz das Backup aus zuführen: (alles noch Quick + Dirty ohne Fehlerhandling).
Ich speichere die *.sbk Dateien auf einem weiteren Rpi im lokalen Netz via SCP und lade es von da mittels Dropbox Uploader (https://github.com/andreafabrizi/Dropbox-Uploader) in meine Dropbox. Den Umweg über einen weiteren Raspi gehe ich, da nach einem Update von RaspberryMatic das ganze weiterhin funktionieren soll.

Auf der RaspberryMatic starte ich folgendes Skript mittels crontab immer um Mitternacht (USER, ZIEL und SSH-Keys für Login ohne Passwort sind vor Ausführung zu erledigen):

cat /usr/local/addons/cuxd_ccu_backup.sh

Code: Alles auswählen

#!/bin/sh

mkdir /tmp/ccu_backup

/usr/local/addons/cuxd/extra/ccu_backup /tmp/ccu_backup

scp /tmp/ccu_backup/*.sbk USER@ZIEL:/home/USER/ccu_backup

rm /tmp/ccu_backup/*.sbk

rmdir /tmp/ccu_backup

# EOF
In der crontab auf der RaspberryMatic folgendes einfügen:
crontab -e

Code: Alles auswählen

# HomeMatic Backup auff ccuio um Mitternacht
* 0 * * * /usr/local/addons/cuxd_ccu_backup.sh > /dev/null 2>&1
Auf dem ZIEL-Raspi wird ebenfalls mittels cron das Skript Dropbox Uploader aufgerufen:
cat occu-pi2-dropbox-backup.sh

Code: Alles auswählen

#!/bin/sh
cd /opt/Dropbox-Uploader/
./dropbox_uploader.sh upload /home/USER/ccu_backup /Backup/ccu_backup
Das läuft soweit und ich habe jede Nacht ein automatisches Backup der CCU-Config in meiner Dropbox.
Allerdings noch komplett ohne Fehlerbehandlung und automatischem löschen von alten Backups.
Gruß Thorsten

ltsalvatore
Beiträge: 27
Registriert: 18.03.2018, 15:00

Re: CCU2 - Skript für automatisches Backup

Beitrag von ltsalvatore » 09.05.2018, 15:07

Hey Leute,

auch ich würde gerne die Backup Datei meiner CCU2, welche ich bis jetzt manuell anlege, automatisch erstellen lassen und diese dann (wenn möglich über eine verschlüsselte Übertragung) auf meine NAS Zuhause speichern.

momentan ist auf der CCU2 bis auf meine Thermostate nichts weiter konfiguriert/installiert.


wäre mein Vorhaben möglich?


bei meiner iobroker Backup Datei hab ich es soweit hinbekommen...
nur wüsste ich nicht wie ich der CCU2 sagen kann, die Backup Datei auf dieser abzulegen, um diese dann von A nach B zu verschieben...

ltsalvatore
Beiträge: 27
Registriert: 18.03.2018, 15:00

Re: CCU2 - Skript für automatisches Backup

Beitrag von ltsalvatore » 15.05.2018, 23:05

niemand eine idee?
wie sichert ihr denn eure CCU2
Zuletzt geändert von alchy am 15.05.2018, 23:07, insgesamt 1-mal geändert.
Grund: sinnloses Fullquote entfernt

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“