Migration von openHAB 2.5 nach openHAB 3
-
- Beiträge: 20
- Registriert: 24. Nov 2019 09:37
Migration von openHAB 2.5 nach openHAB 3
Hallo an das Forum,
ich wollte gerne meinen Raspberry mit openHAB 2.5 nach openHAB 3 migrieren und bin dabei nach der Beschreibung wie man migriert
auf openhab.org vorgegangen.
Ich habe mich per ssh auf den Pi verbunden, dann mit sudo openhab-config gestartet und den Punkt 3 ausgewählt. Leider kam dann ein
Fehler mit dem Error Code 403. Dies hat wohl damit zu tun, dass ich noch auf diesem alten Bintray Repository bin, von dem nun versucht
wird Daten zu laden.
Ich hab dann unter openhab-config erst noch den Punkt 2 ausgewählt in der Hoffnung, dass dies das Problem behebt. Leider ohne Erfolg.
Wo kann ich denn konfigurieren, dass auf das richtige Repository zugegriffen wird?
Grüße, Sven
ich wollte gerne meinen Raspberry mit openHAB 2.5 nach openHAB 3 migrieren und bin dabei nach der Beschreibung wie man migriert
auf openhab.org vorgegangen.
Ich habe mich per ssh auf den Pi verbunden, dann mit sudo openhab-config gestartet und den Punkt 3 ausgewählt. Leider kam dann ein
Fehler mit dem Error Code 403. Dies hat wohl damit zu tun, dass ich noch auf diesem alten Bintray Repository bin, von dem nun versucht
wird Daten zu laden.
Ich hab dann unter openhab-config erst noch den Punkt 2 ausgewählt in der Hoffnung, dass dies das Problem behebt. Leider ohne Erfolg.
Wo kann ich denn konfigurieren, dass auf das richtige Repository zugegriffen wird?
Grüße, Sven
- udo1toni
- Beiträge: 14829
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Migration von openHAB 2.5 nach openHAB 3
Du musst zunächst die sources.list anpassen. da Du openHABian nutzt, per ssh:
Die vorhandene Zeile mit bintray ersetzt Du durch diese hier:
Danach einmal ausführen.
es kann sein, dass sich der Name der Datei seit Deiner Installation geändert hat (also dass die Datei bei Dir anders heißt als bei meinem aktuellen System). openhab kommt aber auf jeden Fall im Namen vor.
Vermutlich ist Dein System auch noch auf buster, inzwischen sind wir bei bullseye. Das wäre im Verzeichnis drüber die Datei sources.list. Das Upgrade von buster auf bullseye ist allerdings etwas umfangreicher, und bei mehreren meiner Systeme musste ich anschließend noch verschiedene Dinge korrigieren, das solltest Du also nicht ohne Backup und eine Extraportion Zeit machen.
Code: Alles auswählen
openhabian@openhab:~$ cd /etc/apt/sources.list.d/
openhabian@openhab:/etc/apt/sources.list.d$ ls -l
insgesamt 9
-rw-r--r-- 1 root root 110 7. Jan 2021 nodesource.list
-rw-r--r-- 1 root root 413 27. Jun 22:57 openhab-linuxpkg.list <--- um diese Datei geht es
-rw-r--r-- 1 root root 52 25. Jul 18:54 zulu-enterprise.list
-rw-r--r-- 1 root root 64 7. Jan 2021 zulu-openjdk.list
openhabian@openhab:/etc/apt/sources.list.d$ sudo nano openhab-linuxpkg.list
Code: Alles auswählen
deb https://openhab.jfrog.io/artifactory/openhab-linuxpkg stable main
Code: Alles auswählen
sudo apt update
es kann sein, dass sich der Name der Datei seit Deiner Installation geändert hat (also dass die Datei bei Dir anders heißt als bei meinem aktuellen System). openhab kommt aber auf jeden Fall im Namen vor.
Vermutlich ist Dein System auch noch auf buster, inzwischen sind wir bei bullseye. Das wäre im Verzeichnis drüber die Datei sources.list. Das Upgrade von buster auf bullseye ist allerdings etwas umfangreicher, und bei mehreren meiner Systeme musste ich anschließend noch verschiedene Dinge korrigieren, das solltest Du also nicht ohne Backup und eine Extraportion Zeit machen.
openHAB4.2.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.8, LXC), mit openHABian eingerichtet
-
- Beiträge: 20
- Registriert: 24. Nov 2019 09:37
Re: Migration von openHAB 2.5 nach openHAB 3
Hallo Udo,
vielen Dank. Die benötigte Datei habe ich soweit angepasst.
Das sudo apt update kann ich ja dann erstmal recht gefahrlos durchführen, richtig? Sorry ich bin nicht so 100% firm mit
Linux.
Ja soweit ich mich erinnere bin ich auf buster. Wie würde ich den am besten auf bullseye updaten? Ich denke erstmal über
sudo openhab-config ein Backup anlegen? Kann ich auch über openhab-config auf bullseye hochrüsten?
Grüße, Sven
vielen Dank. Die benötigte Datei habe ich soweit angepasst.
Das sudo apt update kann ich ja dann erstmal recht gefahrlos durchführen, richtig? Sorry ich bin nicht so 100% firm mit
Linux.
Ja soweit ich mich erinnere bin ich auf buster. Wie würde ich den am besten auf bullseye updaten? Ich denke erstmal über
sudo openhab-config ein Backup anlegen? Kann ich auch über openhab-config auf bullseye hochrüsten?
Grüße, Sven
- udo1toni
- Beiträge: 14829
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Migration von openHAB 2.5 nach openHAB 3
Das Update auf bullseye kannst Du jederzeit auch später machen.
aber wie gesagt, mindestens brauchst Du Zeit dafür. Deshalb kannst Du auch anders vorgehen, und zwar installierst du auf einer 2. SD-Karte komplett neu, wobei ich mir nicht sicher bin, ob das aktuelle Image schon auf bullseye aktualisiert ist.
Die grundsätzliche Vorgehensweise:
Schritt 1, letzte Pakete des aktuellen Systems installieren:
Danach openHAB vorläufig deaktivieren (angegeben für openhab3).
Anschließend
Dies wäre ein guter Zeitpunkt, ein Backup zu erstellen, falls keines existiert.
Jetzt wird das Repository getauscht.
Es wird einfach das Wort "buster" in das Wort "bullseye" geändert, und zwar an allen Stellen in der Datei /etc/apt/spurces.list
Falls es noch weitere Quelllisten gibt, liegen die in dem Unterverzeichnis sources.list.d
Nun kommt der erste Teil des eigentlichen Upgrades:
und anschließend die übrigen Pakete
Abschließend ein letzter Neustart
Und natürlich nicht vergessen, openHAB wieder zu aktivieren:
Das Abschalten von openhab ist nicht zwingend notwendig, aber sinnvoll, weil der Dienst beim Upgrade eventuell durcheinander kommt.
aber wie gesagt, mindestens brauchst Du Zeit dafür. Deshalb kannst Du auch anders vorgehen, und zwar installierst du auf einer 2. SD-Karte komplett neu, wobei ich mir nicht sicher bin, ob das aktuelle Image schon auf bullseye aktualisiert ist.
Die grundsätzliche Vorgehensweise:
Schritt 1, letzte Pakete des aktuellen Systems installieren:
Code: Alles auswählen
sudo apt update && sudo apt -y full-upgrade
Code: Alles auswählen
sudo systemctl disable openhab.service
Code: Alles auswählen
sudo reboot
Jetzt wird das Repository getauscht.
Code: Alles auswählen
sudo sed -i 's/buster/bullseye/g' /etc/apt/sources.list
Falls es noch weitere Quelllisten gibt, liegen die in dem Unterverzeichnis sources.list.d
Code: Alles auswählen
sudo sed -i 's/buster/bullseye/g' /etc/apt/sources.list.d/*
Code: Alles auswählen
sudo apt update && sudo apt -y upgrade --without-new-pkgs
Code: Alles auswählen
sudo apt update && sudo apt -y full-upgrade
Code: Alles auswählen
sudo reboot
Code: Alles auswählen
sudo systemctl enable openhab.service && sudo systemctl start openhab.service
openHAB4.2.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.8, LXC), mit openHABian eingerichtet
-
- Beiträge: 20
- Registriert: 24. Nov 2019 09:37
Re: Migration von openHAB 2.5 nach openHAB 3
Hallo Udo,
ich denke mal Dein Vorschlag auf einer zweiten SD komplett neu zu installieren dürfte wohl am wenigsten Gefahr darstellen.
Diese Variante hatte ich irgendwie so garnicht auf dem Schirm. Bei meinem jetzigen Setup hab ich mir immer dann, wenn ich
etwas geändert habe, den kompletten openHAB-conf Ordner gesichert um im Zweifelsfall Dinge zurückspielen zu können.
Bisher hab ich noch ein überschaubares System. Kann ich den mit den Daten aus dem openHAB-conf Ordner aus openHAB 2.5
in openHAB 3 noch irgendetwas anfangen um mein System in openHAB 3 relativ schnell wieder herzustellen?
ich denke mal Dein Vorschlag auf einer zweiten SD komplett neu zu installieren dürfte wohl am wenigsten Gefahr darstellen.
Diese Variante hatte ich irgendwie so garnicht auf dem Schirm. Bei meinem jetzigen Setup hab ich mir immer dann, wenn ich
etwas geändert habe, den kompletten openHAB-conf Ordner gesichert um im Zweifelsfall Dinge zurückspielen zu können.
Bisher hab ich noch ein überschaubares System. Kann ich den mit den Daten aus dem openHAB-conf Ordner aus openHAB 2.5
in openHAB 3 noch irgendetwas anfangen um mein System in openHAB 3 relativ schnell wieder herzustellen?
- udo1toni
- Beiträge: 14829
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Migration von openHAB 2.5 nach openHAB 3
Du kannst problemlos ein Backup erstellen, mittels
erzeugst Du ein Backup Archiv. Dies liegt in einer zip-Datei vor (der Befehl informiert meines Wissens, wo das Backup gelandet ist).
Nachdem Du openHAB aufgesetzt hast, spielst Du das Backup zurück. Das funktioniert auch versionsübergreifend.
Natürlich gibt es Dinge, die sich grundlegend von openHAB2 zu openHAB3 geändert haben. Die musst Du leider händisch anpassen.
Grob sind das folgende Punkte: 1. OH1 Bindings werden in OH3 nicht mehr unterstützt. Das heißt, jegliche Konfiguration, die OH1 Bindings betrifft, muss komplett neu erstellt werden (natürlich unter der Voraussetzung, dass es ein Ersatzbinding in OH3 gibt)
Diesen Punkt musst Du natürlich vor der Umstellung abklären.
2. Es gibt in Rules zwei relevante Unterschiede, zum einen eine implizite Variable, die teilweise anders funktioniert (das ist triggeringItem, diese steht in OH3 nur in Rules zur Verfügung, die mit Member of getriggert wurden. In Rules, die mit Item getriggert wurden, muss man triggeringItemName verwenden, um zumindest den Namen des Items zu erfahren. Unter OH2 funktioniert triggeringItem mit beiden Trigger Arten. Zum Anderen (schwerwiegender) wurde die Bibliothek Joda Time zugunsten von JavaTime entfernt. Die Aufrufe unterscheiden sich, teilweise gar nicht, teilweise erheblich, teilweise müssen sie komplett anders programmiert werden. Überall, wo Du mit now() als Funktion gearbeitet hast (z.B. now.getHourOfDay) müssen die Aufrufe entsprechend angepasst werden.
Code: Alles auswählen
sudo openhab-cli backup
Nachdem Du openHAB aufgesetzt hast, spielst Du das Backup zurück. Das funktioniert auch versionsübergreifend.
Natürlich gibt es Dinge, die sich grundlegend von openHAB2 zu openHAB3 geändert haben. Die musst Du leider händisch anpassen.
Grob sind das folgende Punkte: 1. OH1 Bindings werden in OH3 nicht mehr unterstützt. Das heißt, jegliche Konfiguration, die OH1 Bindings betrifft, muss komplett neu erstellt werden (natürlich unter der Voraussetzung, dass es ein Ersatzbinding in OH3 gibt)
Diesen Punkt musst Du natürlich vor der Umstellung abklären.
2. Es gibt in Rules zwei relevante Unterschiede, zum einen eine implizite Variable, die teilweise anders funktioniert (das ist triggeringItem, diese steht in OH3 nur in Rules zur Verfügung, die mit Member of getriggert wurden. In Rules, die mit Item getriggert wurden, muss man triggeringItemName verwenden, um zumindest den Namen des Items zu erfahren. Unter OH2 funktioniert triggeringItem mit beiden Trigger Arten. Zum Anderen (schwerwiegender) wurde die Bibliothek Joda Time zugunsten von JavaTime entfernt. Die Aufrufe unterscheiden sich, teilweise gar nicht, teilweise erheblich, teilweise müssen sie komplett anders programmiert werden. Überall, wo Du mit now() als Funktion gearbeitet hast (z.B. now.getHourOfDay) müssen die Aufrufe entsprechend angepasst werden.
openHAB4.2.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.8, LXC), mit openHABian eingerichtet
- peter-pan
- Beiträge: 2685
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: Migration von openHAB 2.5 nach openHAB 3
Hallo Udo,
nur am Rande bemerkt: Herzlichen Dank für die Upgrade-Roadmap. Super erklärt. Hab es gleich mit meinem OH3-Test-Pi ausprobiert:
Code: Alles auswählen
###############################################################################
############### hostHAB3 ####################################################
###############################################################################
## Ip = 192.168.1.xxx
## Release = Raspbian GNU/Linux 11 (bullseye)
## Kernel = Linux 5.10.60-v7l+
## Platform = Raspberry Pi 4 Model B Rev 1.1
## Uptime = 0 day(s). 0:11:56
## CPU Usage = 0% avg over 4 cpu(s) (4 core(s) x 1 socket(s))
## CPU Load = 1m: 0.25, 5m: 0.38, 15m: 0.35
## Memory = Free: 0.67GB (36%), Used: 1.20GB (64%), Total: 1.87GB
## Swap = Free: 1.80GB (100%), Used: 0.00GB (0%), Total: 1.80GB
## Root = Free: 17.62GB (63%), Used: 10.14GB (37%), Total: 28.98GB
## Updates = 0 apt updates available.
## Sessions = 1 session(s)
## Processes = 125 running processes of 32768 maximum processes
###############################################################################
_ _ _ ____ _
___ ___ ___ ___ | | | | / \ | __ ) (_) ____ ___
/ _ \ / _ \ / _ \ / _ \ | |_| | / _ \ | _ \ | | / _ \ / _ \
| (_) | (_) | __/| | | || _ | / ___ \ | |_) )| || (_) || | | |
\___/| __/ \___/|_| |_||_| |_|/_/ \_\|____/ |_| \__|_||_| | |
|_| 3.2.0.M1 - Milestone Build
Gruss - Peter
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.0 openhabian
- udo1toni
- Beiträge: 14829
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Migration von openHAB 2.5 nach openHAB 3
Da gibt es ein ganz klares "Das kommt darauf an!"
Bei Konfigurationsdateien, bei denen ich sicher weiß, dass keine Änderungen vorgenommen wurden, nehme ich die, welche ausgeliefert wird.
Bei Konfigurationsdateien, wo ich sicher weiß, dass es Änderungen gab, übernehme ich die vorliegende Version.
Im Zweifel lasse ich mir das Diff ausgeben, wobei ich aber ehrlicherweise gerne an der Interpretation der Ausgabe scheitere
Wo ich die lokale Version behalten habe, werfe ich dann noch einen Blick in die Doku und schaue, was evtl. an neuen Parametern nachzupflegen ist.
Eventuell ist es auch einfacher, die Werte, die in "meiner" Version geändert wurden, in die neue Version zu kopieren. z.B. bei der smb.conf bietet sich das an, es geht ohnehin nur um die Definition der Freigaben, die stehen ja am Ende der Datei und sind leicht en block zu kopieren.
Die "neue" Verison wird immer unter dem Dateinamen mit der Endung _dist abgespeichert, so dass man sie direkt über die vorhandene Datei kopieren kann (nachdem man die wichtigen Einstellungen ausgelagert hat, versteht sich...)
Aber auch die Variante, einfach immer die ausgelieferte Version zu installieren ist ohne Gefahr, weil apt die vorhandene Datei dann umbenennt. Man kann dann also dennoch alte Konfigurationen wiederherstellen, indem man beide Versionen nebeneinander legt und schrittweise bearbeitet. Natürlich sollte man dazu verstehen, was jeder einzelne Parameter bedeutet, um nicht etwas "kaputt" zu konfigurieren.
openHAB4.2.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.8, LXC), mit openHABian eingerichtet