Immer wenn ein versions Sprung von openHAB ansteht habe ich mich dazu entschlossen mein System neu aufzusetzen. Vor ein paar Tagen wurde openHAB 4.0 offiziell veröffentlicht. https://www.openhab.org/blog/2023-07-23-openhab-4-0-release.html
Benutzer Technisch hat sich oberflächlich “leider” nicht wirklich viel geändert. Diese Update bringt zwar interne (Core) Verbesserungen ist aber meiner Meinung nach hauptsächlich für Entwickler von Vorteil.
Ein wichtiger Punkt ist jedoch die Unterstützung aller Skriptsprachen für Transformationen und Profile. Zudem wurden die Maßeinheiten verbessert/überarbeitet. Eine der größten Veränderung ist jedoch die Umstellung auf Java 17 welche Sicherheitsverbesserungen, Leistungsverbesserungen und eine reduzierte Speichernutzung mit sich bringt.
Grund genug um hier mein neues Installations-Tool vorzustellen. Das BangerTECH Utility.
Zuerst einmal zur verwendeten Hardware. Als Produktionssystem verwende ich einen Raspberry Pi 4 mit 4GB RAM mit Raspberry Pi OS. Mein 1. Testsystem bzw. BackupSystem ist ein NipoGi Mini PC auf dem Debian lite läuft und mein 2. Testsystem läuft auf meinem Server ebenfalls mit Debian lite.
Das Tool gibt es somit für arm Systeme (Raspberry Pi´s) & x86 Systeme (Linux Computer).
Eingehen will ich hier aber vorrangig auf die Installation am Beispiel eines Linux Rechners mit Debian lite als Betriebssystem. Zu Beginn sollte natürlich erst die vorhandene openHAB Konfiguration eures aktuellen Systems gespeichert werden. Hier gibt es unterschiedliche Wege welche ich hier auf der Seite schon vorgestellt habe. Ich nutzte dazu den einfachsten Weg mit dem Befehl:
sudo openhab-cli backup
Dieses lade ich mir dann mit dem Programm CyberDuck vom Verzeichnis /var/lib/openhab/backups herunter.
Nachdem nun die Konfiguration gesichert ist verwende ich entweder eine komplett neue SSD oder formatiere die alte Platte. Darauf installiere ich dann das Raspberry Pi OS oder Debian Lite.
Zuerst sollte dann überprüft werden ob auf dem neuen System sudo installiert ist. Falls nicht könnt Ihr das mit diesem Befehl installieren
su -
apt install sudo
Als nächstes fügen wir den Benutzer (in meinem Fall openhabian) der Gruppe sudoers hinzu mit:
su -
usermod -aG sudo openhabian
Dann erlauben wir noch den root zugriff mittels SSH um z.b. Daten mittels CyberDuck herunterladen zu könne.
sudo nano /etc/ssh/sshd_config
Dort ändern wir dann bei #PermitRootLogin prohibit-password in PermitRootLogin yes
Jetzt kann noch die Passwortabfrage deaktiviert werden falls gewünscht, dieser Schritt ist nötig um nachher das Script ohne sudo… ausführen zu können.
sudo visudo
Hier muss diese Zeile auskommentiert werden
%sudo ALL=(ALL:ALL) ALL
Und diese Zeile eingesetzt werden
%sudo ALL=(ALL) NOPASSWD:ALL
Das ganze sieht dann so aus
Nachdem die Datei abgespeichert wurde kann sudo ohne Passwort verwendet werden.
Jetzt können wir openHABian, Docker & Docker-Compose … mit einem einzigen Klick installieren.
Dazu wechseln wir erst in unser Home Verzeichnis mit:
cd $HOME
Und laden dann das BangerTECH Utility herunter, hier gibt es eine arm Version (für z.b. Raspberry Pi´s) und eine x86 Version (standard Linux Computer).
https://github.com/BangerTech/The-BangerTECH-Utility
Hier im Bsp. wähle ich die x86 Version
sudo wget https://raw.githubusercontent.com/BangerTech/The-BangerTECH-Utility/main/bangertech_utility_x86.sh
Datei ausführbar machen mit um diese z.b. für andere Skripte verwenden zu können.
sudo chmod +x bangertech_utility_x86.sh
Und schon kann die Installation bzw. das Tool ausgeführt werden
sh bangertech_utility_x86.sh
Im Tool könnt Ihr auswählen welche Software bzw. Programme Ihr installieren wollt. Der komplette Installationsvorgang wurde so angelegt, dass euch das Script durch jede einzelne Installation führt.
Alle Docker Container wurden mit Docker-Compose Files angelegt somit muss Docker+Docker-Compose auch installiert werden.
Nach der openHAB Installation z.b. gibt es eine Möglichkeit eure alte Konfiguration einzuspielen bzw. zu restoren, dazu müsst Ihr aber nach dem Ihr gefragt werdet ob Ihr dies machen wollt, das zu verwendende Backup mittels z.b. CyberDuck in den Ordner /var/lib/openhab/backups ablegen. Erst dann kann auf Ja geklickt werden und das Backup wird auch gefunden. Der Name der Datei muss hier openhab-backup.zip sein.
Und schon wird euer Backup eingespielt und Ihr könnt openHAB wie auf dem alten System benutzen.
Wie oben schon beschrieben führt das Script alle benötigten Befehle vollautomatisch aus. Es wird z.b. auch ein eigenes Verzeichnis für die Docker Container angelegt.
Dieses findet Ihr dann unter /home/openhabian/docker-compose-data
Dort können dann natürlich auch alle Dateien eingesehen bzw. verändert werden. So ist es beim Container CodeServer evtl. von Vorteil das voreingestellte Passwort admin abzuändern. Hier geht Ihr wie folgt vor
cd $HOME/docker-compose-data/codeserver
sudo docker-compose down
sudo nano docker-compose.yml
Hier ändert Ihr dann ganz einfach das Passwort und startet den Container wieder mit
sudo docker-compose up -d
Nun könnt Ihr euch im CodeServer mit eurem eigenen Passwort einloggen.
Falls Ihr noch weitere Container bzw. Programme im Tool haben wollt könnt Ihr mir das gerne in die Kommentare schreiben.
Windows:
Bei Windows könnt Ihr dieses Tool sowie auch Docker ebenfalls nutzen. Dort muss aber erst das Linux Subsystem und Docker installiert werden. Keine Sorge das geht sehr einfach.
Zuerst öffnet Ihr eine PowerShell als Administrator und gebt dort einfach diese Zeile ein.
wsl --install --distribution Debian
Nachdem dann der Computer neu gestartet wurde habt Ihr ein laufendes Debian Subsystem unter Windows. Dies könnt Ihr ganz einfach überprüfen indem Ihr wieder eine PowerShell öffnet und dort einfach wsl ein tippt.
Jetzt könntet Ihr z.b. Docker oder ähnliche Programme einfach in Linux installieren jedoch habe ich mich dazu entschieden Docker Desktop zu nutzen.
Nach der Installation und einem Neustart habt Ihr Docker + Docker Compose auf Windows bzw. im Windows Subsystem.
Nun könnt Ihr ganz einfach eine PowerShell öffnen und mit cd $HOME in das Homeverzeichnis eures Benutzers wechseln und dann das BangerTECH Utility herunterladen. Falls wget nicht installiert ist macht Ihr das kurz mit sudo apt install wget.
Das Tool bzw. das Script kann jetzt ganz normal wie auch unter einem eigenständigen Linux System ausgeführt werden.
Bei Windows haben wir aber den Vorteil das wir ganz einfach eine Desktop Verknüpfung anlegen können um so Container nach zu installieren oder upzudaten.
Dazu öffnet Ihr den Windows Explorer, wechselt in das Verzeichnis wo die Verknüpfung erstellt werden soll und geht dann oben links auf Neu und dann auf Verknüpfung.
Im nächsten Fenster müsst Ihr ein Ziel eingeben:
C:\Windows\System32\wsl.exe sh /home/debian/bangertech_utility_x86.sh
und dann noch einen Namen vergeben.
Und schon habt Ihr eine eigene Verknüpfung zum BangerTECH Utility 🙂