Hallo,
nachdem ich schön langsam ebenfalls mit dem Gedanken spiele von 4.x auf 5.x umzusteigen (ich warte noch auf Trixie) wollte ich vorab einmal fragen ob die File Struktur der (knx.things, knx.items und knx.rules) gleich geblieben ist oder hat sich daran auch wieder etwas geändert so wie dazumals zwischen 3.x und 4.x?
openHAB 4.1.1 upgrade auf 5.x
- udo1toni
- Beiträge: 15482
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: openHAB 4.1.1 upgrade auf 5.x
Die Dateistruktur hat sich nie grundlegend geändert, eine Konfiguration von openHAB2 funktioniert auch noch unter openHAB5. Natürlich mit gewissen Einschränkungen
weil sich z.B. Bezeichnungen von Konfigurationsparametern geändert haben, dies, das, (insbesondere Änderungen in der DSL), aber im Grundsatz funktionieren die Dateien immer noch genauso.
Sinngemäß galt das auch von openHAB1 an, nur wurde openHAB1 bezüglich der Bindings grundlegend anders konfiguriert, so dass es da tatsächlich erhebliche Änderungen gab.
Natürlich kommen mit jeder Hauptversion neue Features hinzu, das hat teilweise Auswirkungen, das sollte nicht weiter verwundern.
Sinngemäß galt das auch von openHAB1 an, nur wurde openHAB1 bezüglich der Bindings grundlegend anders konfiguriert, so dass es da tatsächlich erhebliche Änderungen gab.
Natürlich kommen mit jeder Hauptversion neue Features hinzu, das hat teilweise Auswirkungen, das sollte nicht weiter verwundern.
openHAB5.0.3 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime) (Proxmox 9.1.1, LXC)
-
scotty_de
- Beiträge: 2
- Registriert: 14. Sep 2025 10:19
Re: openHAB 4.1.1 upgrade auf 5.x
Bei mir läuft jetzt dank deiner Anleitung auch alles (fast).
Normalerweise kopiere und lösche ich Daten mit WinSCP.
Das geht jetzt in den meisten Ordnern und mit den meisten Dateien nicht mehr. Deren Besitzer sind nun root, openhab, mosquitto.
Wie bekomme ich das mit den Rechten geregelt?
VI läuft auch nicht richtig. Ich kann Dateien öffnen, editieren aber nicht speichern. Mit ESC den Einfügemodus verlassen funktioniert. W, Q oder WQ ENTER sind ohne Funktion.
Normalerweise kopiere und lösche ich Daten mit WinSCP.
Das geht jetzt in den meisten Ordnern und mit den meisten Dateien nicht mehr. Deren Besitzer sind nun root, openhab, mosquitto.
Wie bekomme ich das mit den Rechten geregelt?
VI läuft auch nicht richtig. Ich kann Dateien öffnen, editieren aber nicht speichern. Mit ESC den Einfügemodus verlassen funktioniert. W, Q oder WQ ENTER sind ohne Funktion.
- udo1toni
- Beiträge: 15482
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: openHAB 4.1.1 upgrade auf 5.x
Die Dateirechte kannst Du leicht aus der Shell heraus geraderücken:
Der erste Befehl hält openHAB an, der zweite Befehl weist den User, mit dem openHAB ausgeführt wird als Besitzer aller Dateien zu, die für openHAB relevant sind, der dritte Befehl startet openHAB wieder.
Dateien, die nicht explizit für Gruppen oder alle beschreibbar sind, können nur vom Besitzer verändert werden, das ist Teil des Sicherheitskonzepts.
Falls Du eine Datei bearbeiten musst, die nicht Deinem User gehört, kannst Du den Editor Deiner Wahl mit erweiterten Rechten ausführen lassen:
ruft beispielsweise nano so auf, dass die Datei /etc/default/openhab bearbeitet (und gespeichert) werden kann.
sudo, ohne weitere Parameter aufgerufen, führt den nachfolgenden Befehl im Kontext des Users root aus. sudo kann Befehle aber in jedem beliebigen Userkontext ausführen, z.B.
erstellt eine Kopie der Datei readme.txt aus dem Ordner $OPENHAB_CONF/rules/ (gewöhnlich /etc/openhab/rules/) und die Datei gehört anschließend dem User openhab.
Du kannst natürlich auch vi benutzen, nano ist nicht so mächtig, aber dafür leichter zu bedienen
Arbeiten mit WinSCP: Ja, kann man machen, ist aber suboptimal
insbesondere wenn Du mit dem "falschen" User arbeitest. Bei vielen Dateien benötigt openHAB nur Lesezugriff, weshalb es im Prinzip egal sein kann, mit welchem User die Dateien angelegt wurden, aber gewisse Dateien möchte openHAB auch beschreiben können, und die sollten dann auch dem User openhab zugeordnet sein. Die pragmatische Lösung ist, WinSCP mit dem User openhab zu nutzen, der aber eigentlich nicht remote zugreifen darf (kann man natürlich ändern...).
Ich nutze VSCode zum bearbeiten von Dateien, dabei arbeite ich remote. VSCode läuft also auf dem Windows Rechner und baut einen Tunnel auf das openHAB System auf, durch den die Dateien dann bearbeitet werden können. Dabei verwendet der Tunnel den openhab User Kontext, und zwar gesichert mit einem Private/Public Schlüsselpaar. Den Schlüssel entsperre ich dann über die Schlüsselverwaltung, so dass ich nicht ständig ein Passwort eingeben muss. VSCode mit openHAB Plugin bietet diverse Funktionen, die beim programmieren oder konfigurieren von openHAB helfen (Syntaxprüfung, Vorschläge zur Ergänzung usw., Liste aller Things/Items mit Option, die UIDs oder Namen in Dateien einzufügen, Anzeige des Zustands usw.)
Code: Alles auswählen
sudo systemctl stop openhab.service
openhab-cli reset-ownership
sudo systemctl start openhab.serviceDateien, die nicht explizit für Gruppen oder alle beschreibbar sind, können nur vom Besitzer verändert werden, das ist Teil des Sicherheitskonzepts.
Falls Du eine Datei bearbeiten musst, die nicht Deinem User gehört, kannst Du den Editor Deiner Wahl mit erweiterten Rechten ausführen lassen:
Code: Alles auswählen
sudo nano /etc/default/openhabsudo, ohne weitere Parameter aufgerufen, führt den nachfolgenden Befehl im Kontext des Users root aus. sudo kann Befehle aber in jedem beliebigen Userkontext ausführen, z.B.
Code: Alles auswählen
sudo -u openhab cp $OPENHAB_CONF/rules/readme.txt $OPENHAB_CONF/rules/readme2.txtDu kannst natürlich auch vi benutzen, nano ist nicht so mächtig, aber dafür leichter zu bedienen
Arbeiten mit WinSCP: Ja, kann man machen, ist aber suboptimal
Ich nutze VSCode zum bearbeiten von Dateien, dabei arbeite ich remote. VSCode läuft also auf dem Windows Rechner und baut einen Tunnel auf das openHAB System auf, durch den die Dateien dann bearbeitet werden können. Dabei verwendet der Tunnel den openhab User Kontext, und zwar gesichert mit einem Private/Public Schlüsselpaar. Den Schlüssel entsperre ich dann über die Schlüsselverwaltung, so dass ich nicht ständig ein Passwort eingeben muss. VSCode mit openHAB Plugin bietet diverse Funktionen, die beim programmieren oder konfigurieren von openHAB helfen (Syntaxprüfung, Vorschläge zur Ergänzung usw., Liste aller Things/Items mit Option, die UIDs oder Namen in Dateien einzufügen, Anzeige des Zustands usw.)
openHAB5.0.3 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime) (Proxmox 9.1.1, LXC)