Upgrade OH2 auf OH3: Zweiter Anlauf

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von FelixK »

Hallo,

ich habe im Mai 2021 bereits erfolglos versucht von OH2 auf OH3 auf meinem Raspberry Pi 4 upzugraden. Dazu hatte ich dann diesen Thread eröffnet: viewtopic.php?f=15&t=5454&p=34446#p34446

udo1toni hat mir geraten, dass ich die Prerequisites (https://www.openhab.org/docs/configurat ... requisites) des Upgrades manuell ausführen müsste. Leider hat das damals schon nicht geklappt und bei meinem erneuten heutigen Anlauf auch nicht. Folgendes habe ich gemacht:

- Backup meiner SD-Karte
- Die .list-Datei erweitert:

Code: Alles auswählen

echo 'deb https://openhab.jfrog.io/artifactory/openhab-linuxpkg stable main' | sudo tee /etc/apt/sources.list.d/openhab.list
- Danach ein

Code: Alles auswählen

sudo apt-get update
mit der folgenden Fehlermeldung:
Err:9 https://dl.bintray.com/openhab/apt-repo2 stable Release
502 Bad Gateway
Ign:6 https://openhab.jfrog.io/artifactory/openhab-linuxpkg stable InRelease
Get:10 https://openhab.jfrog.io/artifactory/openhab-linuxpkg stable/main armhf Packages [2,505 B]
Reading package lists... Done
E: The repository 'https://dl.bintray.com/openhab/apt-repo2 stable Release' doesno longer have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
W: GPG error: https://openhab.jfrog.io/artifactory/openhab-linuxpkg stable InRelease: The following signatures were invalid: EXPKEYSIG 075721F6A224060A openHAB Bintray Repositories <owner@openhab.org>
W: The repository 'https://openhab.jfrog.io/artifactory/openhab-linuxpkg stableInRelease' is not signed.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.
- Danach habe ich es auch mit einem

Code: Alles auswählen

sudo apt-get upgrade
versucht. Auch da gab es eine Fehlermeldung:
Errors were encountered while processing:
/tmp/apt-dpkg-install-aBXiP1/74-openhab2_2.5.12-1_all.deb
Updating FireMotD available updates count ...
E: Sub-process /usr/bin/dpkg returned an error code (1)
Könnt ihr mir helfen und sagen, was ich genau machen muss, um zu dem Punkt zu kommen, dass ich die Schritt-für-Schritt-Anleitung zum Upgrade befolgen kann?

Vielen Dank und viele Grüße

Felix
Viele Grüße

Felix

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

Re: Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von udo1toni »

Vermutlich hast Du mehrere Verweise auf die Quellen.

Schau bitte mal in die Datei /etc/apt/sources.list, sowie in alle Dateien unterhalb /etc/apt/sources.list.d/ mit der Endung .list

Alle Verweise auf bintray kannst Du einfach löschen, gewöhnlich indem Du die ganze Datei löschst. Gibt es noch dateien unterhalb sources.list.d/, welche eine andere Endung als .list haben, können diese Dateien meist ebenfalls entfernt werden, das sind gewöhnlich nur Backups von Dateien, die durch ein Programm geändert wurden.

Auf welcher OS Version bist Du? (geht direkt aus der ersten Datei hervor, aktuell ist bullseye, davor war es buster, davor stretch.
buster ist noch ok, sollte aber mittelfristig auf bullseye angehoben werden.
stretch sollte dringend angehoben werden (unbedingt den Upgradepfad einhalten, erst Upgrade auf buster, anschließend Upgrade auf bullseye).
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Re: Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von FelixK »

Vielen Dank für deine Antwort.
udo1toni hat geschrieben: 30. Jan 2022 19:09 Schau bitte mal in die Datei /etc/apt/sources.list, sowie in alle Dateien unterhalb /etc/apt/sources.list.d/ mit der Endung .list

Alle Verweise auf bintray kannst Du einfach löschen, gewöhnlich indem Du die ganze Datei löschst. Gibt es noch dateien unterhalb sources.list.d/, welche eine andere Endung als .list haben, können diese Dateien meist ebenfalls entfernt werden, das sind gewöhnlich nur Backups von Dateien, die durch ein Programm geändert wurden.
Bei mir sind neben der /etc/apt/sources.list im Ordner /etc/apt/sources.list.d/ noch folgende Dateien vorhanden: nodesources.list, openhab2.list, raspi.list, zulu-embedded.list. Nur in der openhab2.list habe ich einen Verweis auf bintray gefunden:

deb https://dl.bintray.com/openhab/apt-repo2 stable main

und aus der Datei gelöscht. Jetzt ist die Datei leer. Hätte der Eintrag hier

Code: Alles auswählen

echo 'deb https://openhab.jfrog.io/artifactory/openhab-linuxpkg stable main' | sudo tee /etc/apt/sources.list.d/openhab.list
statt in die openhab.list in die openhab2.list gehört?
udo1toni hat geschrieben: 30. Jan 2022 19:09 Auf welcher OS Version bist Du? (geht direkt aus der ersten Datei hervor, aktuell ist bullseye, davor war es buster, davor stretch.
buster ist noch ok, sollte aber mittelfristig auf bullseye angehoben werden.
stretch sollte dringend angehoben werden (unbedingt den Upgradepfad einhalten, erst Upgrade auf buster, anschließend Upgrade auf bullseye).
Ich bin leider auf stretch. :( Kann ich da ganz einfach nach googlen, wie ich von stretch auf buster und buster auf bullseye upgrade? Geht das auch mit OpenHab2 oder sollte dafür erstmal OpenHab3 installiert sein?

Vielen Dank!!!
Viele Grüße

Felix

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

Re: Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von udo1toni »

Die openHAB Version spielt da erst mal keine Rolle. Schritt für Schritt:
  1. Zunächst bringst Du die Installation auf den aktuellen Stand, mit

    Code: Alles auswählen

    sudo apt update && sudo apt -y upgrade
  2. Anschließend kannst Du noch mal ein

    Code: Alles auswählen

    sudo apt -y full-upgrade
    hinterherschieben. Sollte apt meckern (ich kann mich nicht mehr erinnern, wann apt den Parameter gelernt hat...) kannst Du stattdessen auch

    Code: Alles auswählen

    sudo apt-get -y dist-upgrade
    probieren.
  3. Anyway, anschließend änderst Du das Repository auf buster:

    Code: Alles auswählen

    sudo sed -i 's/stretch/buster/g' /etc/apt/sources.list
    Dieser Befehl tauscht einfach alle Vorkommen des Wortes stretch in der Datei /etc/apt/sources.list gegen das Wort buster aus.
  4. Nun beginnt das eigentliche Update.

    Code: Alles auswählen

    sudo apt update && sudo apt -y upgrade
  5. Nachdem das Upgrade durchgelaufen ist, kannst Du sicherheitshalber mal einen Neustart machen und anschließend wieder mit

    Code: Alles auswählen

    sudo apt -y full-upgrade
    letzte Pakete ins System holen.

    Danach sollte ein
  6. Code: Alles auswählen

    cat /etc/os-release
    Dir anzeigen, dass buster läuft. (nun ja... auch schon vor dem full-upgrade...)
  7. Das Upgrade auf bullseye läuft exakt gleich ab. Da wir aber schon auf dem aktuellen Stand sind, machen wir einfach mit Punkt 3. weiter, nur dass wir diesmal das Wort buster durch das Wort bullseye ersetzen. Die Befehle werden noch in der Historie sein ;) die meiste Arbeit besteht also aus "ein paar Befehle zurück blättern"
Beim Upgrade von buster auf bullseye kann verschiedentlich etwas weg fliegen, bei mir betraf das Python. Du solltest also anschließend etwas genauer hinschauen, ob irgendwas plötzlich nicht mehr funktioniert.

Ein Backup ist natürlich immer sinnvoll, besonders bei einem Betriebssystemupgrade ;)
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Re: Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von FelixK »

Vielen Dank für die ausführliche Antwort.

Leider hat es nicht geklappt. Ich bekam die Meldung

Code: Alles auswählen

E: The package openhab2 needs to be reinstalled, but I can't find an archive for it.
bei jedem der Update/Upgrade-Schritte. Und, obwohl ich alle Schritte bis zum Ende ausgeführt habe, stand das os-release noch auf stretch. Ich habe dann in die /etc/apt/sources.list.d/openhab2.list den bintray-Verweis wieder eingefügt und nochmal laufen lassen. Mit demselben Resultat. Danach habe ich die openhab2.list-Datei komplett gelöscht und erneut Updates und Upgrades laufen lassen. Mit demselben Problem.

Dann habe ich nach dem Fehler gefunden und den einzigen Forenbeitrag, den ich gefunden habe war, dass man das openhabian config tool updaten soll, worauf es aber keine Antwort mehr gab, ob das geklappt hat. Ich habe nach der Möglichkeit gesucht, das openhabian config tool zu updaten, aber nicht wirklich etwas gefunden. :(
Viele Grüße

Felix

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

Re: Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von udo1toni »

Also, bintray kannst Du komplett außen vor lassen, das ist seit Mai letzten Jahres abgeschaltet.
Es kann nicht sein, dass da immer noch stretch drin steht, dann muss schon weit vorher was schief gegangen sein.

Da das System mir aus der Ferne betrachtet eh in keinem guten Zustand zu sein scheint, möchte ich vorschlagen, dass Du eine Sicherung Deiner Konfiguration vornimmst. Lass openHABian dabei aus dem Spiel:

Code: Alles auswählen

sudo openhab-cli backup
Die entstandene zip-Datei sicherst Du z.B. auf einen USB-Stick. Nach dem Anschließen des Sticks:

Code: Alles auswählen

sudo mount /dev/sda1 /mnt

sudo cp /var/lib/openhab2/backups/openhab2-backup-*.zip /mnt/

sudo umount /mnt
Anschließend packst Du ein aktuelles Image von openHABian auf eine SD-Karte (falls zur Hand, nimm eine neue) und startest mit einem komplett jungfräulichen openHABian1.7.2.
Wenn das initiale Setup durchgelaufen ist, kannst Du auch einen Downgrade auf openHAB2.5.12 machen (geht direkt aus openhabian-config heraus).

Wenn Du openHAB wieder auf dem System hast, nimmst Du die Datei vom USB-Stick und kopierst sie an einen passenden Ort auf der SD-Karte, z.B. /home/openhabian/. Alternativ kannst Du das Backup auch direkt vom USB-Stick einspielen, mit

Code: Alles auswählen

sudo openhab-cli restore </pfad/und/name/der/datei>
Eventuell solltest Du vorher ein laufendes openHAB anhalten, mit

Code: Alles auswählen

sudo systemctl stop openhab2.service
oder, falls Du gleich auf openHAB3 wechselst, mit

Code: Alles auswählen

sudo systemctl stop openhab.service
Ein Upgrade von OH2 auf OH3 kann reibungslos verlaufen, wenn man schon alle Vorarbeiten erledigt hat. Dann reduziert sich die Arbeit nach dem Upgrade auf das korrigieren der Rules, weil es da ein paar Änderungen gab. Meist hat man aber das eine oder andere V1-Binding laufen, und damit kann openHAB3 gar nichts anfangen.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Re: Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von FelixK »

Vielen Dank für deine Antwort.

Das Aufsetzen des neuen openHABian werde ich heute Abend anfangen und Bescheid geben, ob es erfolgreich war.
Viele Grüße

Felix

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Re: Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von FelixK »

EDIT: Bevor ihr hier von meinem erneuten, teilweises Scheitern lest: Stand ist aktuell, dass ich OpenHAB 3.2.0 und Debian bullseye installiert habe. Meine Konfiguration habe ich auch laden können. Mir sind auch keine Bindings aufgefallen, die nicht wieder installiert werden konnten. Ich nutze OpenHAB nur sehr oberflächlich, ohne großartige Regeln,... Folgendes mache ich:

- Fronius-Binding, um den Wechselrichter der PV-Anlage auszulesen
- MQTT-Binding, um mit externen Python-Skripten zu kommunizieren, die meine Gartenbewässerung steuern und Temperatur / Luftfeuchtigkeitssensoren auslesen
- ExecBinding, um den Status meines Servers und meines Bewässerungs-Pis (im Endeffekt nicht mehr als ein Ping) auszulesen
- OpenWeatherMap-Binding, das ich nicht wirklich großartig nutze

Würde es da mehr Sinn machen zu versuchen, diese recht überschaubaren Funktionen direkt in OH3 wieder zum Laufen zu bekommen? Also mosquitto, die Python-Skripte installieren und konfigurieren und das Fronius-Binding einrichten?

Wenn nicht, dann ist das hier mein ursprünglicher Post:

-----------------------------------------------------------------------

Sorry, aber ich muss mich erneut melden. Ich habe die von dir genannten Schritte durchgeführt:

- openhab-cli backup
- Zip auf PC kopiert
- openhabian 1.7.2 auf die SD-Karte gespielt
- openhab 3 über den Wizard im Browser installiert
- openhab-cli restore

-> ich habe nun die installierten Bindings, etc. in OpenHAB 3.2.0 gesehen.

Jetzt wollte ich auf OpenHAB 2.5 downgraden, in dem ich

Code: Alles auswählen

sudo openhabian-config
aufgerufen habe. Über "01 Select Branch" habe ich "(*) stable old version of openHABian (openhab 2)" mit der Leertaste ausgewählt, so dass das Sternchen vor dem stable steht.

Dann habe ich "02 Upgrade System" gewählt.

Wenn ich OpenHAB nun wieder im Browser aufrufe, dann sehe ich jedoch weiterhin OpenHAB 3.2.0. Ein explizites Downgrade sehe ich nicht und wenn ich danach google, dann finde ich nur Infos über ein Downgrade über den Paketmanager apt.

Ein zweites Problem das ich habe ist, dass ich mich nur noch aus CygWin, nicht mehr aus Putty heraus mit dem Raspberry Pi verbinden kann. Putty sagt "couldn't agree a key exchange algorithm (available curve25519-sha256,curve25519-sha256@libssh.org ...)". Nach den Infos, die ich gefunden habe, muss ich unter /etc/ssh/sshd_config einen

Code: Alles auswählen

Ciphers
Eintrag hinzufügen. Dahinter habe ich die "curve25519-sha256,curve25519-sha256@libssh.org" (nur die ersten beiden Einträge der Fehlermeldung) eingetragen, so dass es dann so aussah:

Code: Alles auswählen

Ciphers curve25519-sha256,curve25519-sha256@libssh.org
Allerdings kann ich ssh dann nicht meh neustarten und es kommt zum Fehler.
Viele Grüße

Felix

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

Re: Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von udo1toni »

Die verwendeten Bindings stehen ja alle als V2 (bzw. als V3) zur Verfügung, wenn Du nicht sehr an Paper UI (openHAB2 UI) hängst, solltest du schauen, ob Du Dich mit Main UI (openHAB3 UI) anfreunden kannst.
Die größten Probleme sind gewöhnlich Umstellungen von einem V1 Binding auf die Things-Methode, welche mit V2 eingeführt wurde.

Falls du Rules nutzt, kann es einzelne Dinge geben, die angepasst werden müssen, aber das bekommen wir leicht hin.

Downgrade auf openHAB2: dazu musst Du über Menüpunkt 40 gehen und explizit Downgrade auswählen.

Was Dein Problem mit PuTTY betrifft: Welche Version von PuTTY nutzt Du denn? Der offizielle Release ist zur Zeit 0.76, aber der preRelease 0.77 steht ebenfalls schon zur Verfügung.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Re: Upgrade OH2 auf OH3: Zweiter Anlauf

Beitrag von FelixK »

Dankeschön. Ich möchte insgesamt ja schon gerne die neuere Version, als OpenHAB 3 verwenden, von daher werde ich versuchen mich in MainUI zu wurschteln.

Das Downgrade werde ich nicht mehr machen. Ich habe jetzt angefangen Mosquitto über openhabian-config zu installieren und zu konfigurieren. Das will noch nicht starten, da bin ich gerade noch am Suchen. Liegt wohl daran, dass ich alte Konfigurationsdateien verwendet habe.

Putty habe ich 0.64 auf dem Geschäfts-Laptop. Privat habe ich nur noch einen PC und, um auf der Couch das ganze machen zu können, nutze ich das. Ich frage mal unsere IT, ob sie es updaten können.
Viele Grüße

Felix

Antworten