-
-
Notifications
You must be signed in to change notification settings - Fork 205
Installation LXC
Wenn du OpenCCU als nativen, leichtgewichtigen Linux‑Container auf einem bereits bestehenden Debian‑basierten Host (Debian, Ubuntu, Raspberry Pi OS, Armbian, …) betreiben möchtest, kannst du dies mit Linux Containers (LXC) umsetzen. Die nachfolgenden Schritte führen durch eine teilautomatisierte Installation eines OpenCCU‑LXC‑Systems.
Important
Im Gegensatz zu einer vollwertigen VM (z. B. unter Proxmox VE oder mit QEMU/KVM) erfordert LXC zusätzliche Pakete und Anpassungen auf dem Host. Diese sind nötig, damit OpenCCU auf die Homematic‑Funkhardware (z. B. RPI‑RF‑MOD, HmIP‑RFUSB, …) zugreifen kann. Zwar lassen sich alle Änderungen später wieder entfernen, doch Host‑Updates können sich auf den Betrieb des OpenCCU‑Containers negativ auswirken. Plane System‑Updates daher bewusst ein und teste sie, falls möglich, vorab.
Note
LXC bereits installiert und eine Netzwerk‑Bridge (br0) als Hauptinterface vorhanden? Dann kannst du direkt zu Installation Container springen.
Um einen OpenCCU‑LXC‑Container stabil zu betreiben, muss der Host vorab korrekt netzwerktechnisch vorbereitet sein. OpenCCU erwartet auf dem Host eine Bridge (br0) mit statischer IP‑Adresse, über die der Host ins LAN eingebunden ist. Je nach Distribution und Netzwerk‑Stack unterscheidet sich die Einrichtung.
Im Folgenden werden Platzhalter in spitzen Klammern <…> verwendet:
-
<device>: Name des primären Netzwerkinterfaces (z. B.eth0) des Hosts. -
<address>/<prefix>: statische IPv4‑Adresse mit Netzwerkpräfix (z. B.192.168.178.10/24). -
<gateway>: IPv4‑Adresse des Default‑Gateways/Routers (z. B.192.168.178.1). -
<dns1>,<dns2>: IPv4‑Adresse(n) des/der DNS‑Server (z. B.192.168.178.1).
Verwendest du NetworkManager (z. B. auf Armbian, Raspberry Pi OS), richte die Bridge wie folgt ein:
-
Aktives Interface ermitteln
nmcli con show --active
Notiere dir das primäre Interface (z. B.
eth0) sowie die künftige statische IP (inkl. Präfix). -
bridge-utils installieren
sudo apt install bridge-utils
-
Bridge anlegen und konfigurieren
sudo nmcli con add type bridge ifname br0 con-name br0 stp no forward-delay 0 sudo nmcli con add type bridge-slave ifname <device> master br0 sudo nmcli con modify br0 ipv4.addresses "<address>/<prefix>" ipv4.gateway "<gateway>" ipv4.dns "<dns1>,<dns2>" ipv4.method manual
Achtung: Während der Umkonfiguration kann die Netzwerkverbindung kurzzeitig ausfallen. Bei Remote‑Zugriff ggf. Konsole/Monitor bereithalten.
-
Neustart Prüfe die Bridge mit
ip aodernmcli. Führe anschließend zur Sicherheit einen Neustart durch:sudo reboot
Auf Systemen mit ifupdown (z. B. klassisches Debian):
-
bridge-utils installieren
sudo apt install bridge-utils
-
/etc/network/interfacesanpassenauto lo iface lo inet loopback iface <device> inet manual auto br0 iface br0 inet static address <address>/<prefix> gateway <gateway> dns-nameservers <dns1>,<dns2> bridge_ports <device> bridge_stp off bridge_fd 0 -
Neustart
sudo reboot
Auf Systemen mit netplan (z. B. Ubuntu):
-
/etc/netplan/<file>.yamlanpassennetwork: version: 2 renderer: networkd ethernets: <device>: dhcp4: no dhcp6: no bridges: br0: dhcp4: no dhcp6: no interfaces: [<device>] addresses: [<address>/<prefix>] routes: - to: default via: <gateway> nameservers: addresses: [<dns1>, <dns2>] parameters: stp: false forward-delay: 0
-
Änderungen anwenden
sudo netplan generate sudo netplan --debug apply
Achtung: Auch hier kann die Verbindung kurzzeitig abreißen. Bei Fehlkonfiguration ggf. lokale Konsole nutzen.
-
Neustart
sudo reboot
Sind die Voraussetzungen erfüllt und die Bridge br0 aktiv, lässt sich der OpenCCU‑Container wie folgt installieren:
-
Installationsskript starten In einer Shell (lokal oder per SSH) den Downloader ausführen:
sudo sh -c "wget -qO - https://openccu.de/install-lxc.sh | bash -" -
Dependency‑Check bestätigen Das Skript prüft die erforderlichen Pakete und Host‑Anpassungen und zeigt einen Hinweisdialog. Mit Yes bestätigen, um fortzufahren.

Hinweis: Die durch das Skript vorgenommenen Änderungen lassen sich jederzeit rückgängig machen; siehe Abschnitt Deinstallation (
uninstall‑Option). -
Funkmodul‑Overlays (nur ARM/GPIO) Auf ARM‑Hosts mit GPIO‑Funkmodul (
RPI‑RF‑MOD/HM‑MOD‑RPI‑PCB) fragt das Skript, ob die nötigen Device‑Tree‑Overlays installiert werden sollen.

Hinweis: Bei USB‑ (
HmIP‑RFUSB,HB‑RF‑USB‑2, …) oder Ethernet‑Anbindung (HB‑RF‑ETH) ist keine Overlay‑Installation nötig → No wählen. -
Version wählen Wähle die gewünschte OpenCCU‑Version (Release oder Snapshot).

Empfehlung: Für den produktiven Einsatz Release‑Versionen bevorzugen; Snapshots sind experimentell.
-
Userdisk‑Pfad festlegen Gib den Pfad für die „Userdisk“ (persistente Daten) an, Standard:
/var/lib/openccu/userfs.

Achtung: Ein bereits verwendetes
userfsdarf nicht gleichzeitig von mehreren Containern genutzt werden. -
Container‑Name festlegen Vergib einen eindeutigen Namen für den OpenCCU‑Container.

-
CPU‑Kerne zuweisen Wähle die Anzahl der CPU‑Kerne (empfohlen ≥ 2).

-
Arbeitsspeicher limitieren Lege das RAM‑Limit für den Container fest.

-
Installation durchführen Das Skript legt den Container an und konfiguriert ihn.

-
Neustart (falls Overlays/Module installiert)
sudo reboot
Nach dem Reboot startet der Host erneut; idealerweise wird der neue OpenCCU‑LXC direkt gestartet. Konsole ansehen: lxc-console <name>; Shell betreten: lxc-attach <name>. Weitere Hinweise findest du in der Skriptausgabe und in den offiziellen LXC‑Manpages.
So aktualisierst du einen bestehenden OpenCCU‑LXC:
-
Container stoppen
lxc-stop <name>
-
Backup/Snapshot anlegen
lxc-snapshot <name>
-
Updateskript starten
sudo sh -c "wget -qO - https://openccu.de/install-lxc.sh | bash -s update"
-
Container auswählen

-
Zielversion wählen

Hinweis: Für produktive Systeme Release statt Snapshot wählen.
-
Update bestätigen

-
Update läuft/ist abgeschlossen

Abschließend den Container wieder starten:
lxc-start <name>Zum Mitlesen der Bootausgaben:
lxc-console <name>Da für den LXC‑Betrieb Host‑Anpassungen vorgenommen wurden (Pakete, Module, Overlays), kannst du diese mit der Uninstall‑Option des Skripts wieder entfernen:
-
Deinstallation starten
sudo sh -c "wget -qO - https://openccu.de/install-lxc.sh | bash -s uninstall" -
Bestätigen

-
Rückbau durchführen lassen

Hinweis: Bei Fehlermeldungen den Vorgang ggf. erneut ausführen; das Skript prüft vor jedem Schritt, ob die jeweilige Komponente noch vorhanden ist.
Nach erfolgreicher Deinstallation einen Neustart einplanen. Nicht mehr benötigte Abhängigkeiten lassen sich optional per
sudo apt autoremoveentfernen.
Table of Contents OpenCCU Documentation © 2015-2025 Jens Maus and OpenCCU Contributors, licensed under CC BY-SA License 4.0