Wie Kopiere ich die Userdata mit Samba (Win10) auf SD karte

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Benutzeravatar
leupy
Beiträge: 83
Registriert: 21. Nov 2018 19:43
Answers: 0
Wohnort: Saarlouis

Wie Kopiere ich die Userdata mit Samba (Win10) auf SD karte

Beitrag von leupy »

Hallo,
Ich versuche die Userdata von einer Datensicherung wieder auf meine SD Karte mittels Samba zu schreiben.
Ich bekomme immer die Fehlermeldung das ich keine Berechtigung habe.
Wie kann ich mir die Berechtigung geben ? Oder wie bekomme ich die Daten auf die SD karte ?
Saarländer
Raspberry Pi 3 & 4 openHAB3.2
Asus Touchscreen Wandeinbau
Win 10 Rechner zum Visualisieren
Sonoff Aktoren mit Tasmota
Sonoff RF Bridge
MiLight
Shelly 1 und 2

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

Re: Wie Kopiere ich die Userdata mit Samba (Win10) auf SD karte

Beitrag von udo1toni »

Ich gehe mal von einem Raspberry Pi mit openHABian Image aus, dann musst Du bei Samba als User openhabian angemeldet sein, um schreiben zu dürfen.
Samba ist aber weder der richtige Weg, um "zu Fuß" Datensicherungen vorzunehmen noch um diese wieder einzuspielen.
openHAB bringt unter GNU/Linux dazu ein Tool mit, welches man über die Shell ausführen kann.

Code: Alles auswählen

sudo openhab-cli backup
erzeugt ein zip-Archiv aller relevanten Datenpfade von openHAB und legt dies (ohne Angabe eines Dateinamens) unterhalb $OPENHAB_USERDATA/backups/ ab. Da das Backup mit erweiterten Rechten ausgeführt wird, gehört das Archiv anschließend dem User root. Das bedeutet, Du kannst das Archiv zwar über Samba kopieren, aber nicht verschieben (sollte man immer im Hinterkopf haben).
Zum Einspielen eines solchen Backups legst Du die gewünschte zip-Datei einfach "irgendwo" auf dem Pi ab, gewöhnlich im home-Verzeichnis des Users, der angemeldet ist (also meist /home/openhabian/) und führst dann den Restore aus:

Code: Alles auswählen

sudo systemctl stop openhab.service # falls openHAB noch laufen sollte
sudo openhab-cli restore ./dateiname_des_backups.zip # -/ -> das aktuelle Verzeichnis
sudo openhab-cli reset-ownership # sorgt dafür, dass alle Rechte auf Dateien und Pfade stimmen
sudo openhab-cli clean-cache # löscht den Cache, danach braucht openHAB beim Starten länger, dafür ist alles geordnet
sudo systemctl start openhab.service
Du musst nur einen Bruchteil der Dateien unterhalb $OPENHAB_USERDATA/ tatsächlich aus dem Backup wiederherstellen, meist reicht es, ./etc/ und ./jsondb/ (ohne Unterordner .jsondb/backup/) zurückzuspielen.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.2, LXC), mit openHABian eingerichtet

Benutzeravatar
leupy
Beiträge: 83
Registriert: 21. Nov 2018 19:43
Answers: 0
Wohnort: Saarlouis

Re: Wie Kopiere ich die Userdata mit Samba (Win10) auf SD karte

Beitrag von leupy »

Hallo, das mit der Daten Sicherung kenne Ich und mache das auch So. (nur halt zu selten :-(( )
Mir ist die SD karte defekt gegangen und ich konnte aber noch die Userdata und Config auf meine Rechner kopieren.
Jetzt bekomme ich die nicht über Samab auf das Laufende SD gespielt die leider nicht aktuell ist.
Wie setze ich mir bei Samba die rechte oder wie Melde ich mich an als User damit ich die daten kopieren darf ?
Saarländer
Raspberry Pi 3 & 4 openHAB3.2
Asus Touchscreen Wandeinbau
Win 10 Rechner zum Visualisieren
Sonoff Aktoren mit Tasmota
Sonoff RF Bridge
MiLight
Shelly 1 und 2

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

Re: Wie Kopiere ich die Userdata mit Samba (Win10) auf SD karte

Beitrag von udo1toni »

Na, Du musst beim Verbinden mit dem Share als Username openhabian und als Passwort ebenfalls openhabian angeben.
Falls Du das - aus welchen Gründen auch immer - nicht hinbekommst, wäre die einfachste Lösung, WinSCP zu verwenden.
Schritt 1: Du installierst WinSCP
Schritt 2: Du richtest eine Verbindung zum Pi ein. Verbindungsart: ssh (Port 22), User und Passwort nach Deinene Wünschen, der User muss halt auf dem Pi existieren.
Schritt 3: Du kopierst die Daten mittels WinSCP ins home-Verzeichnis des angemeldeten Users (dorthin darfst Du auf jeden Fall schreiben)
Schritt 4: Du verbindest Dich per ssh mit dem Pi
Schritt 5: Du verschiebst die Dateien mittels

Code: Alles auswählen

sudo mv /home/meinusername/ordnerMitZuKopierendenDaten $OPENHAB_USERDATA/
Natürlich immer vorausgesetzt, die Daten liegen in der richtigen Struktur vor :)
Schritt 6: Du führst den Befehl

Code: Alles auswählen

sudo openhab-cli reset-ownership
aus.
WinSCP bietet auch die Option, direkt eine Shell zu öffnen, damit könntest Du also Schritt 4 aus WinSCP heraus ausführen.

Was die (zukünftig hoffentlich häufigeren) Backups betrifft: Man kann da einfach mit einem kleinen Script automatisieren. Das Script ruft den Backup-Befehl auf und verschiebt evtl. das Archiv auch automatisch an einen sicheren Ort. Das Script selbst wird über crontab automatisch gestartet, z.B. täglich um 2:17 Uhr (hat keine Bedeutung, nur irgendeine Uhrzeit), oder auch mehrfach täglich, ganz nach Deinem Geschmack. Ein Backup ohne Persistence ist ca. 10 MByte groß, mit Persistence sind es dann vielleicht 120 MByte (kommt natürlich sehr auf das System an, aber so als Richtschnur), wenn Du ein externes System hast, auf welches Du die Backups automatisch auslagern kannst, kannst Du dort auch gleich noch ein Script einrichten, welches dafür sorgt, dass nur die letzten x Backups aufgehoben werden. Mit einer Automatik vergisst man das leidige Thema, ohne es später zu bereuen...
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.2, LXC), mit openHABian eingerichtet

Antworten