OpenHAB ist ein Softwarelösung für Gebäudeautomatisierung. Sie ist in Java geschrieben und ist Plattform- und Herstellerneutral. Die Verbindung zu den einzelnen Komponenten wird über sogenannte Bindings hergestellt. Die Anzeige der einzelnen Werte oder die Einstellungen bestimmter Werte wird über Item realisiert. Die Werte oder der Status bestimmter Items kann wiederum über Binding in einer Datenbank gespeichert werden. Da OpenHAB in Java geschrieben ist, muss auch als erstes die Java Runtime installiert werden.Da Java auch ganz gerne Sicherheitslücken aufweist, sollte es natülrich aktuell gehalten werden. Aus diesem Grund sollte es mit in die Repository Liste des Systems übernommen werden.
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886 apt-get update apt-get install oracle-java8-installer
Ist die Installation erfolgt, kann man mit folgendem Befehl die Versionsnummer der installierten Java-Version abfragen.
java -version
java version "1.8.0_65" Java(TM) SE Runtime Environment (build 1.8.0_65-b17) Java HotSpot(TM) Client VM (build 25.65-b01, mixed mode)
Momentan wird die Version 1.8.0_65-b17 ausgeliefert. Da Java nun funktioniert kann Openhab installiert werden.
wget -qO - 'https://bintray.com/user/downloadSubjectPublicKey?username=openhab' | sudo apt-key add - echo "deb http://dl.bintray.com/openhab/apt-repo stable main" | sudo tee /etc/apt/sources.list.d/openhab.list apt-get update apt-get install openhab-runtime
Wenn die Installation ohne Fehler durchläuft, ist man fertig. Der Dienst ist gestartet und betriebsbereit. Bei mir ist allerdings ein Fehler aufgetreten.
Failed to get D-Bus connection: Unknown error -1 dpkg: error processing package openhab-runtime (--configure): subprocess installed post-installation script returned error exit status 1 E: Sub-process /usr/bin/dpkg returned an error code (1)
Scheinbar funktioniert bei mir der Befehl „systemctl“ nicht richtig.
Fehlerbehebung
Da scheinbar alles richtig installiert wurde und nur der Dienst nicht gestartet worden ist, reicht es im Post-Install-Script die Zeile 9 auszukommentieren und in Zeile 10 „systemctl“ durch „service“ zu ersetzen.
vim /var/lib/dpkg/info/openhab-runtime.postinst
# /bin/systemctl daemon-reload /usr/sbin/service openhab start
Danach läuft die Installation fehlerfrei durch. Und startet OpenHAB.
Das Problem scheint auch schon im im Forum angekommen zu sein. „systemd“ ist nicht kompatibel zu RAM-Log. Man kann leider nur eines von beiden haben.
OpenHAB bei Systemstart automatisch starten
update-rc.d openhab defaults