openHAB :: Installation
In diesem Artikel geht es um die Installation der Hausautomatisierungssoftware openHAB auf ein bereits installiertes und konfiguriertes Debian basierendes System. Zudem zeige ich, wie eine bereits installierte Instanz von openHAB einfach und bequem auf die jeweils neuste Version aktualisiert werden kann.
Verfügbare Artikel zu openHAB
Inhalt
Installation als Nutzer root
Die Installation von openHAB nehmen wir als Nutzer „root“ vor. Danach läuft openHAB im Kontext seines eigenen, nicht priviligierten Nutzers.
Aktualisieren des bestehenden Systems
Bevor wir mit der Installation starten, sollte das dafür genutzte System aktualisiert werden.
Dazu gehen wir wie folgt vor:
apt-get update && apt-get upgrade && apt-get dist-upgrade
Installation der Java-Umgebung
openHAB benötigt für den Betrieb eine funktionsfähige Java-Umgebung. Daher installieren wir Java (zur Zeit Version 1.8) wie folgt:
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" > /etc/apt/sources.list.d/webupd8team-java.list echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" >> /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
Wir prüfen den Erfolg der Installation mit
java -version
Im Erfolgsfall wird uns nun mitgeteilt, dass die Version 1.8 auf unserem System vorhanden ist.
openHAB installieren
Seit einiger Zeit besteht die Möglichkeit, openHAB bequem über ein dazu zur Verfügung gestelltes Repository zu installieren. Unsere Paketverwaltung „apt“ kümmert sich dabei um die Installation, mögliche Abhängigkeiten zu anderen Paketen sowie die Aktualisierung der installierten Pakete. Da das openHAB-Repository digital signiert ist, müssen wir zunächst den entsprechenden gpg-Schlüssel hinzufügen. Um diesen, bzw. im späteren Verlauf auch andere Dateien, herunterladen zu können, benötigen wir das Tool „wget„:
apt-get install wget
Nun nutzen wir „wget„, um den gpg-Schlüssel hinzuzufügen:
wget -qO - 'https://bintray.com/user/downloadSubjectPublicKey?username=openhab' | apt-key add -
Anschließend können wir nun das openHAB-Repository in unsere Liste der genutzten Paketquellen hinzufügen.
echo "deb http://dl.bintray.com/openhab/apt-repo stable main" > /etc/apt/sources.list.d/openhab.list
Experimentierfreudige können alternativ das „testing-Repository“ verwenden. Diese Versionen sind jedoch nicht als stabil gekennzeichnet und es können Fehler oder Abstürze auftreten.
echo "deb http://dl.bintray.com/openhab/apt-repo testing main" > /etc/apt/sources.list.d/openhab.list
Nun aktualisieren wir unsere Datenbank der verfügbaren Pakete mit
apt-get update
und installieren schlussendlich openHAB durch
apt-get install openhab-runtime
openHAb selbst kann wie folgt gestartet werden:
systemctl start openhab
Damit openHAB beim Systemstart automatisch gestartet wird, aktivieren wir das sogenannte init-Script durch:
systemctl enable openhab
Addons installieren
Addons lassen sich ebenso einfach wie openHAB selbst durch die Paketverwaltung „apt“ installieren. Dazu sind die jeweiligen Pakete immer im gleichen Schema benannt:
openhab-addon-${Addon-Typ}-${Addon-Name}
Beispielsweise möchte ich die Werte meiner Items gerne in eine RRD4J-Datenbank speichern und installiere das entsprechende RRD4J-Addon mittels:
apt-get install openhab-addon-persistence-rrd4j
Eine Liste der verfügbaren openHAB-Pakete und damit auch die der Addons erhält man mit
apt-cache search openhab
openHAB aktualisieren
Durch die Paketverwaltung ist die Aktualisierung von openHAB durch einen kleinen Einzeiler getan:
apt-get update && apt-get upgrade
Grundkonfiguration
In der installierten Version von openHAB befindet sich die Beispielkonfiguration „openhab-default.cfg„. Die passen wir noch an die eigenen Bedürfnisse an und nutzen dazu einen Texteditor des persönlichen Geschmacks:
cd /etc/openhab/configurations/ cp openhab_default.cfg openhab.cfg nano openhab.cfg
Dort sollte Beispielsweise die Zeile
#mainconfig:refresh=
in
mainconfig:refresh=30
geändert werden, damit Änderungen in dieser Hauptkonfigurationsdatei automatisch eingelesen und angewendet werden. Mit diesem Eintrag prüft openHAB alle 30 Sekunden, ob sich die Datei geändert hat.
Damit nur ausgewählten Nutzern der Zugriff auf die Weboberfläche von openHAB gewährt wird, empfiehlt sich die Änderung der Zeile
#security:option=
in
security:option=ON
Zudem ist es dazu notwendig, die Datei „/etc/openhab/configurations/users.cfg“ mit dem folgenden Schema (pro Nutzer eine Zeile) zu befüllen:
Loginname:Passwort
Interessant ist zudem der Bereich „Mail Action configuration„. Mit einer gültigen Konfiguration in diesem Bereich ist es mit openHAB möglich, bei bestimmten Ereignissen E-Mails zu versenden.
Die Tastenkombination „STRG + X“ beendet den Editor „nano“ und fragt bei Änderungen, ob diese gespeichert werden sollen.
Des Weiteren können die verwendeten Ports von openHAB geändert werden, unter welchen die Weboberfläche erreichbar sein wird. Diese Ports sind in der folgenden Datei zu konfigurieren:
nano /etc/default/openhab
Dort kann der HTTP-Port geändert werden (Standard 8080) sowie der HTTPS-Port für gesicherte Verbindungen (Standard 8443). Dabei ist zu beachten, dass aufgrund der Ausführung als nicht priviligierter Benutzer kein Port unter 1024 genutzt werden kann.
Wer dennoch einen Port unter 1024 nutzen möchte, kann einen Reverse-Proxy einsetzen, wie es in diesem Beitrag beschrieben wird.
Vorbereitungen für eigene Bash-Scripte
Für viele Beiträge auf dieser Seite benötigen wir einen Ordner, in dem wir Bash-Scripte ablegen können. Dazu verwende ich in allen Beiträgen einheitlich den Pfad „/scripts„, den wir mit
mkdir /scripts
erstellen und den Besitz durch
chown openhab: /scripts/
an den Benutzer „openhab“ übertragen.
Zudem setzen die vorgestellten Scripte einen passwortlosen SSH-Zugriff auf die entsprechenden Raspberrys voraus. Dazu befolgen wir die Schritte im Beitrag „Automatischer SSH-Login“ und beachten dort insbesondere die Besonderheiten für openHAB.
Weitere Konfiguration
Sollte openHAB nun fehlerfrei ausgeführt werden, folgt im nächsten Beitrag die weitere Konfiguration.
Neuanfang – Das smarte Home
23.06.2017 @ 07:47
[…] Infos zur Installation von OpenHab gibt es hier […]
Jürgen Nielsen
22.02.2016 @ 10:47
Danke für die ausführliche Antwort:
Ja, mit deiner Vermutung hast du leider recht, mir fehlen die grundlegende Kenntnisse im Bereich Linux. Ich stehe auf dem Kriegspfad mit den Benutzerrechten (leider teilweise auch auf WIN10). Auf den Vorgänger-Versionen war das nie ein Problem!?!
Ich versuche zwar, mich da einzulesen, aber ich habe noch nicht Fuß gefasst, um nicht zu sagen „ohne Erfolg bisher“.
Merkwürdigerweise wird der Pi jetzt im Windows-Netzwerk angezeigt, nachdem ich Passwd / Shell -Zuweisung gemacht habe, aber dann wird nach einem Passwort gefragt und keines passt!?!
Unterverzeichnisse von „PI“ habe ich als Homebereich bezeichnet,
Auf /bin /dev /etc usw komme ich nicht.
Daniel Wenzel
21.02.2016 @ 16:27
Leider glaube ich, dass dir grundlegende Kenntnisse im Bereich Linux fehlen. Für den Umgang mit der Himbeere oder der Bash ansich solltest du dich da ein wenig einlesen.
In deiner Windows-Netzwerkumgebung werden nur Geräte angezeigt, die sich per „Windows Network Discovery“ dort melden oder andere Protokolle wie uPnP anbieten. Deine Himbeere wird dort niemals erscheinen. Wenn du dem Nutzer „openhab“ ein Passwort sowie eine Shell zuweist, kannst du dich mit WinSCP auf der Himbeere mit diesen Daten anmelden und die Konfigurationsdateien, die du mit deinem Windows-Gerät erstellt hast, dort in die entsprechenden Verzeichnisse kopieren.
Passwort vergeben:
passwd openhab
Shell zuweisen:
chsh -s /bin/bash openhab
Und was genau meinst du mit „Homebereich“? Das Heimatverzeichnis? Und wenn, wessen Nutzer?
Jürgen Nielsen
21.02.2016 @ 15:57
Danke für die schnelle Antwort, aber das funktioniert leider auch nicht bei mir.
Wenn ich speichern will, erhalte ich die Meldung:
Erlaubnis verweigert.
Fehlercode: 3
Fehlernachricht vom Server : Permission denied
Es mang aber auch an dem WIN10 liegen, es wird kein „pi“ im Netzwerk angezeigt, obwohl ich ihn über Putty und WinSCP erreichen kann. Aber speichern kann ich dort nur im Homebereich. Hast du noch einen Tipp?
Sonst bleibt mir wohl nichts anderes übrig, als Openhab händisch im Homebereich zu installieren. (Anderswo habe ich keine Berechtigung)
Daniel Wenzel
21.02.2016 @ 08:57
Tut mir leid, den Designer habe ich nie genutzt und ich denke, das werde ich auch nicht.
Sämtliche Anleitungen auf dieser Seite sind dafür gedacht, die Konfigurationsdatein per Hand zu editieren und diese dann beispielsweise mit WinSCP auf den OpenHAB-Server zu kopieren.
Bei WinSCP kannst du die Zugangsdaten vom Nutzer „openhab“ verwenden.
Jürgen Nielsen
20.02.2016 @ 14:27
Hallo,
ich habe laut obiger Anweisung mit root-rechten Openhab (stable) auf einem Raspi2 installiert.
Demo habe ich vom Download-Ordner in /etc/openhab entzippt. Läuft soweit auch gut.
Nun will ich mit dem Designer von meinem Windowsrechner die Openhab-Inis… bearbeiten.
Doch leider kann ich dem Designer nicht die Config zuweisen. Ich komme bis zum etc-Ordner, weiter wird nicht geöffnet, da ich keine Zugriffsrechte habe. Was kann ich da ändern, dass mein Windows10-Rechner darauf zugriff bekommt?
Mit freundlichen Grüßen
Jürgen
Daniel Wenzel
07.01.2016 @ 04:59
Nein, das geht meines Wissens nicht.
Mit einer Benutzersteuerung wird die gesamte Sitemap sowie die REST-API gesichert. Also entweder gesamter Zugriff oder gar keiner.
Matthias
06.01.2016 @ 17:41
Hallo Daniel,
weiß du ob man, wenn man die die Security Option aktiviert hat, in OpenHAB sich auf den angemeldeten Benutzer beziehen kann?
Allso bestimmt Items nur für bestimmte Benutzer sichtbar machen kann?
Viele Grüße
Matthas