Seite 1 von 4

Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 3. Aug 2023 12:38
von Hannes
Guten Tag,

ich befinde mich mit meiner openHABian Installation derzeit auf OpenHAB 3.4.0 und würde gerne auf die akutellste (stabile) Version 4.0.1 updaten.
Leider ist die Version vom OS noch buster:

PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

Kann mir bitte jemand eine kurze Anleitung geben, wie ich mit möglichst wenig Aufwand zum gewünschten Release komme und die bereits installierten Add-Ons und Konfigurationen weiterverwenden kann?

Vielen Dank,
Hannes

Re: Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 3. Aug 2023 13:56
von udo1toni
ja, keine große Sache.
Schritt 0: Zur Sicherheit ein Backup Deiner Konfiguration machen :)
Schritt 1: Verhindern, dass openHAB mit upgegradet wird (das sollte erst passieren, wenn auch Java 17 schon installiert ist, was aber erst mit bullseye nativ zur Verfügung steht)

Code: Alles auswählen

sudo apt-mark hold openhab openhab-addons
Schritt 2: Update der aktuellen Installation auf den letzten Stand

Code: Alles auswählen

sudo apt update && sudo apt -y full-upgrade
Schritt 3: Paketquellen umschreiben:

Code: Alles auswählen

grep -rl buster /etc/apt/ | sudo xargs sed -i 's/buster/bullseye/g'
Bitte KEINESFALLS auf bookworm upgraden, Man muss immer von Release zu Release upgraden.
Schritt 4: Upgrade des OS auf bullseye (identisch mit Schritt 2)

Code: Alles auswählen

sudo apt update && sudo apt -y full-upgrade
Hier kommen nun sehr viele Updates.
Während der Updates kommt es eventuell zu Nachfragen, ob eine Datei aus den neuen Quellen genutzt werden soll oder beibehalten werden soll.
Wenn Du keine eigenen Veränderungen vorgenommen hast, kannst Du jeweils mit y antworten, bis auf eine Datei, das ist die smb.conf, die solltest Du beibehalten (einfach <enter>, da n schon vorausgewählt ist), da hier alle Freigaben für Windows definiert sind und es mühsam sein kann, das wieder herzurichten.
Nach dem Upgrade einmal neu starten:

Code: Alles auswählen

sudo reboot
Einmal prüfen, dass noch alles funktioniert (mal kurz in die UI rein schauen, vielleicht mal frontail öffnen, einfach, dass das System wie gewohnt arbeitet)
Nun können wir die Updatesperre wieder entfernen:

Code: Alles auswählen

sudo apt-mark unhold openhab openhab-addons
Weiter geht es mit openhabian-config

Code: Alles auswählen

sudo openhabian-config
Bitte unbedingt das Update beim Start zulassen.
Prüfen, dass der richtige Branch ausgewählt ist (01 - release ... supports openHAB4 ...)
Über Punkt 45 OpenJDK 17 installieren
Anschließend Punkt 41 openHAB Release wählen.
openhabian-config sollte nun vollautomatisch openHAB4.0.1 einrichten und dabei alles, was automatisch angepasst werden kann umstellen.

Beachte bitte unbedingt die Release Notes zu allen(!) Versionen seit V3.4.0 https://github.com/openhab/openhab-distro/releases. Teilweise sind Breaking Changes nur in den Zwischenversionen dokumentiert. Nach 3.4.4 sollten aber die Release Notes der 4.0.0 stable (sowie 4.0.1..) ausreichen, da die 3.4.4 die letzte stable Version von openHAB3 vor Veröffentlichung von openHAB4.0 stable war (3.4.5 kam erst später...)

Sollte es Bemerkungen zu von Dir verwendeten Bindings geben, schau da ganz besonders aufmerksam drauf :) spart nach dem Upgrade Nerven...

Re: Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 3. Aug 2023 18:19
von Hannes
Vielen Dank für die rasche und ausführliche Antwort!
Ich glaube, bei der Java-Installation über Punkt 45 OpenJDK 17 ist etwas schief gelaufen, denn nachdem ich diesen Punkt ausgeführt habe und java -version eingebe, bekomme ich:
-bash: java: command not found
...angezeigt.

Es schaut also so aus, als ob die alte Java-Version deinstalliert wurde, die neue Version jedoch nicht installiert.

Was muss hier noch gemacht werden?

Danke,
Hannes

Re: Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 3. Aug 2023 18:46
von Hannes
Hat sich erledigt, ich habe Java 17 mit:

Code: Alles auswählen

sudo apt install openjdk-17-jre-headless
...installiert.

Re: Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 3. Aug 2023 20:06
von udo1toni
Genau, das ist dann die einfachste Lösung...

Re: Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 3. Aug 2023 20:45
von Hannes
OpenHAB 4.0.1 läuft dank deiner Hilfe nun auf meinem Pi problemlos.
Vielen Dank nochmals für den tollen Support Udo.

LG
Hannes

Re: Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 4. Aug 2023 09:42
von udo1toni
Gerne :)

Re: Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 18. Aug 2023 19:27
von tommesd
Hallo zusammen, ich habe mich von der 3.4.2 (buster)an ein Update auf 4.0.2 gewagt. Nach dem bullseye update hatte ich den Fehler
"Failed to start DHCP Client Daemon", welchen ich mit

sudo nano /etc/systemd/system/dhcpcd.service.d/wait.conf

Change from:
[Service]
ExecStart=
ExecStart=/usr/lib/dhcpcd5/dhcpcd -q -w

To:
[Service]
ExecStart=
ExecStart=/usr/sbin/dhcpcd -q -w

gefixt bekommen habe. Aber der Mosquitto MQTT Broker startet auch nicht. Die Fehlermeldung lautet:
"Failed to start Mosquitto MQTT Broker"

Hat jemand einen Tipp?

Re: Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 18. Aug 2023 19:33
von udo1toni
Was bekommst Du denn als Ausgabe bei

Code: Alles auswählen

systemctl status mosquitto.service
? Was liefert

Code: Alles auswählen

sudo systemctl start mosquitto.service
? Falls Mosquitto anschließend nicht läuft, was liefert

Code: Alles auswählen

sudo journalctl -xe
(im Zweifel musst Du evtl. etwas in der Liste hochscrollen, um Meldungen von mosquitto zu Gesicht zu bekommen, weil schon andere Dienste dazwischengemeckert haben)

Re: Update von OpenHAB 3.4.0 auf openHAB 4.0.1 (stable) von buster

Verfasst: 18. Aug 2023 19:38
von tommesd

Code: Alles auswählen

openhabian@openhabian:~ $ systemctl status mosquitto.service
● mosquitto.service - Mosquitto MQTT Broker
     Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Fri 2023-08-18 19:14:20 CEST; 21min ago
       Docs: man:mosquitto.conf(5)
             man:mosquitto(8)
    Process: 598 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto (code=exited, status=0/SUCCESS)
    Process: 601 ExecStartPre=/bin/chown mosquitto /var/log/mosquitto (code=exited, status=0/SUCCESS)
    Process: 604 ExecStartPre=/bin/mkdir -m 740 -p /run/mosquitto (code=exited, status=0/SUCCESS)
    Process: 607 ExecStartPre=/bin/chown mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
    Process: 608 ExecStart=/usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf (code=exited, status=1/FAILURE)
   Main PID: 608 (code=exited, status=1/FAILURE)
        CPU: 49ms

Code: Alles auswählen

openhabian@openhabian:~ $ sudo systemctl start mosquitto.service
Job for mosquitto.service failed because the control process exited with error code.
See "systemctl status mosquitto.service" and "journalctl -xe" for details.

Code: Alles auswählen

openhabian@openhabian:~ $ sudo journalctl -xe
░░ An ExecStart= process belonging to unit mosquitto.service has exited.
░░
░░ The process' exit code is 'exited' and its exit status is 1.
Aug 18 19:36:54 openhabian systemd[1]: mosquitto.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ The unit mosquitto.service has entered the 'failed' state with result 'exit-code'.
Aug 18 19:36:54 openhabian systemd[1]: Failed to start Mosquitto MQTT Broker.
░░ Subject: A start job for unit mosquitto.service has failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ A start job for unit mosquitto.service has finished with a failure.
░░
░░ The job identifier is 1628 and the job result is failed.
Aug 18 19:36:54 openhabian systemd[1]: mosquitto.service: Scheduled restart job, restart counter is at 5.
░░ Subject: Automatic restarting of a unit has been scheduled
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ Automatic restarting of the unit mosquitto.service has been scheduled, as the result for
░░ the configured Restart= setting for the unit.
Aug 18 19:36:54 openhabian systemd[1]: Stopped Mosquitto MQTT Broker.
░░ Subject: A stop job for unit mosquitto.service has finished
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ A stop job for unit mosquitto.service has finished.
░░
░░ The job identifier is 1700 and the job result is done.
Aug 18 19:36:54 openhabian systemd[1]: mosquitto.service: Start request repeated too quickly.
Aug 18 19:36:54 openhabian systemd[1]: mosquitto.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ The unit mosquitto.service has entered the 'failed' state with result 'exit-code'.
Aug 18 19:36:54 openhabian systemd[1]: Failed to start Mosquitto MQTT Broker.
░░ Subject: A start job for unit mosquitto.service has failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ A start job for unit mosquitto.service has finished with a failure.
░░
░░ The job identifier is 1700 and the job result is failed.
Aug 18 19:36:56 openhabian sudo[11829]: openhabian : TTY=pts/0 ; PWD=/home/openhabian ; USER=root ; COMMAND=/usr/bin/systemctl start mosquitto.service
Aug 18 19:36:56 openhabian sudo[11829]: pam_unix(sudo:session): session opened for user root(uid=0) by openhabian(uid=1000)
Aug 18 19:36:56 openhabian systemd[1]: mosquitto.service: Start request repeated too quickly.
Aug 18 19:36:56 openhabian systemd[1]: mosquitto.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ The unit mosquitto.service has entered the 'failed' state with result 'exit-code'.
Aug 18 19:36:56 openhabian systemd[1]: Failed to start Mosquitto MQTT Broker.
░░ Subject: A start job for unit mosquitto.service has failed
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ A start job for unit mosquitto.service has finished with a failure.
░░
░░ The job identifier is 1772 and the job result is failed.
Aug 18 19:36:56 openhabian sudo[11829]: pam_unix(sudo:session): session closed for user root
Aug 18 19:37:01 openhabian CRON[11867]: pam_unix(cron:session): session opened for user root(uid=0) by (uid=0)
Aug 18 19:37:01 openhabian CRON[11866]: pam_unix(cron:session): session opened for user openhabian(uid=1000) by (uid=0)
Aug 18 19:37:01 openhabian CRON[11868]: (openhabian) CMD (sudo /home/pi/cooler_fan.sh > /dev/null)
Aug 18 19:37:01 openhabian CRON[11869]: (root) CMD (sudo /home/openhabian/cooler_fan.sh > /dev/null)
Aug 18 19:37:01 openhabian sudo[11871]:     root : PWD=/root ; USER=root ; COMMAND=/home/openhabian/cooler_fan.sh
Aug 18 19:37:01 openhabian sudo[11871]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Aug 18 19:37:01 openhabian sudo[11870]: pam_unix(sudo:auth): conversation failed
Aug 18 19:37:01 openhabian sudo[11870]: pam_unix(sudo:auth): auth could not identify password for [openhabian]
Aug 18 19:37:01 openhabian sudo[11871]: pam_unix(sudo:session): session closed for user root
Aug 18 19:37:01 openhabian CRON[11866]: (CRON) info (No MTA installed, discarding output)
Aug 18 19:37:01 openhabian CRON[11866]: pam_unix(cron:session): session closed for user openhabian
Aug 18 19:37:01 openhabian CRON[11867]: pam_unix(cron:session): session closed for user root
Aug 18 19:37:28 openhabian sudo[12072]: openhabian : TTY=pts/0 ; PWD=/home/openhabian ; USER=root ; COMMAND=/usr/bin/journalctl -xe
Aug 18 19:37:28 openhabian sudo[12072]: pam_unix(sudo:session): session opened for user root(uid=0) by openhabian(uid=1000)