⚙️ Schritt 7: Vorbereitung für ioBroker
1. Funktionen in /boot/config.txt anpassen
In der /boot/config.txt lassen sich bestimmte Funktionen deaktivieren, um Systemressourcen zu sparen.
Bei mir waren WiFi und Bluetooth, die ich nicht benötige, bereits deaktiviert:
sudo nano /boot/config.txt
Beispielinhalt:
# Uncomment if you want to disable wifi or bluetooth respectively
dtoverlay=disable-wifi
dtoverlay=disable-bt
💡 Hinweis:
Standardmäßig wird der UART des Raspberry Pi 4 vom integrierten Bluetooth-Modul belegt.
Um den UART für die serielle Kommunikation über die GPIO-Pins – z.B. für ein Z-Wave-Modul – freizugeben, füge folgende Zeile hinzu:enable_uart=1
Zusätzlich:
dtparam=audio=off
#dtoverlay=vc4-kms-v3d
display_auto_detect=0
2. NTP-Zeitserver konfigurieren
Ich nutze den Zeitserver der FritzBox:
sudo nano /etc/systemd/timesyncd.conf
Füge hinzu:
NTP=192.168.0.1
3. Root-Partition mit noatime mounten (ohne /etc/fstab)
a) /boot/cmdline.txt bearbeiten:
sudo nano /boot/cmdline.txt
b) In der vorhandenen Zeile den Parameter rootflags=noatime ergänzen.
Beispiel (alles in einer Zeile, keine Umbrüche!):
root=UUID=8823e411-2982-44c9-92f3-7af051ce915e rw rootwait rootflags=noatime console=serial0,115200 console=tty1 fsck.repair=yes
⚠️ Hinweis:
Wenn du ein Z-Wave-Modul verwendest, entferne den Eintragconsole=serial0,115200.
Dadurch wird der Serial Port nicht mehr für Konsolenausgaben genutzt.
root=UUID=8823e411-2982-44c9-92f3-7af051ce915e rw rootwait rootflags=noatime console=tty1 fsck.repair=yes
Nach diesen Anpassungen:
sudo ldconfig
sudo usermod -a -G uucp iobroker
sudo reboot
Prüfen:
groups iobroker
cat /boot/cmdline.txt
ls -l /dev/ttyA*
Nach dem Neustart:
findmnt -no OPTIONS /
→ In der Ausgabe sollte noatime enthalten sein.
Damit werden keine Access-Time-Stempel mehr geschrieben → das spart Schreibzugriffe auf die SSD.
4. Automatischen TRIM-Lauf aktivieren
sudo systemctl enable --now fstrim.timer
Prüfen:
systemctl status fstrim.timer
💡 Hinweis:
Manche externe SSDs (z.B. Samsung T7) unterstützen TRIM über USB nicht.
Du kannst es manuell aktivieren mit einer udev-Regel:
lsusb
echo 'ACTION=="add|change", ATTRS{idVendor}=="04e8", ATTRS{idProduct}=="4001", SUBSYSTEM=="scsi_disk", ATTR{provisioning_mode}="unmap"' \
| sudo tee /etc/udev/rules.d/50-usb-ssd-trim.rules
sudo udevadm control --reload-rules
sudo udevadm trigger
Prüfen:
cat /sys/block/sda/queue/discard_max_bytes
→ Sollte eine Zahl > 0 zeigen.
TRIM-Testlauf:
sudo fstrim -av
💡 Beispielausgabe:
/boot: 453 MiB (474963968 Bytes) auf /dev/sda1 getrimmt /: 34,7 MiB (36335616 Bytes) auf /dev/sda2 getrimmt
Falls TRIM nicht unterstützt wird:
sudo systemctl disable --now fstrim.timer
5. LED (optional deaktivieren)
Die rote Power-LED (PWR) kann beim Boot automatisch abgeschaltet werden.
a) LED-Namen prüfen:
ls /sys/class/leds/
Beispielausgabe:
ACT default-on mmc0 mmc0:: PWR
b) Service-Datei erstellen:
sudo nano /etc/systemd/system/disable-pwr-led.service
Inhalt:
[Unit]
Description=Disable the PWR LED on Raspberry Pi
[Service]
Type=oneshot
ExecStart=/bin/sh -c "echo 0 > /sys/class/leds/PWR/brightness"
[Install]
WantedBy=multi-user.target
c) Service aktivieren:
sudo systemctl enable disable-pwr-led.service
sudo systemctl start disable-pwr-led.service
Oder testen nach Neustart:
sudo reboot
💡 Hinweis:
Mitcat /sys/class/leds/PWR/brightnesskannst du den Zustand prüfen:
0 = aus,1 = an.
6. Systempakete installieren
sudo pacman -S --needed \
acl avahi base-devel cairo cmake curl gcc giflib git htop iftop \
libcap libjpeg-turbo librsvg lm_sensors make fastfetch net-tools \
pam pango pkgconf systemd-libs unzip sqlite cifs-utils nfs-utils \
rsync polkit distro-info hdparm
7. Node.js installieren
💡 Hinweis:
ioBroker unterstützt keine Installation über NVM (Node Version Manager).
Verwende stattdessen eine LTS-Version direkt aus den offiziellen Arch-Paketquellen.
Installation der aktuellen LTS-Version Jod (Node.js 22.x, Stand Oktober 2025):
sudo pacman -S nodejs-lts-jod npm
Quelle: archlinux.de/packages/extra/x86_64/nodejs-lts-jod
Dokumentation: Node.js Previous Releases
💡 Info:
Das Paket nodejs-lts-jod entspricht der aktuellen Long-Term-Support-Version 22
und wird von ioBroker ausdrücklich empfohlen.
Prüfen:
command -v node nodejs npm npx && node -v && nodejs -v && npm -v && npx -v
Beispielausgabe (wenn „nodejs“ fehlt):
/usr/bin/node
/usr/bin/npm
/usr/bin/npx
-bash: nodejs: command not found
v22.19.0
11.6.0
11.6.0
Fehlenden Symlink anlegen:
sudo ln -s /usr/bin/node /usr/bin/nodejs
Erneuter Test:
command -v node nodejs npm npx && node -v && nodejs -v && npm -v && npx -v
💡 Hinweis:
Wenn du Dateien verschiebst oder löschst, aktualisiere den Bash-Cache:
hash -r
8. ioBroker installieren
Die Installation erfolgt über das offizielle ioBroker-Installationsskript:
curl -sL https://iobroker.net/install.sh | bash -
💡 Hinweis:
Warnungen wie „sudo: apt-get: Befehl nicht gefunden“ kannst du ignorieren.
Diese gelten nur für Debian-basierte Systeme.
Nach erfolgreicher Installation:
==========================================================================
ioBroker was installed successfully
Open http://192.168.0.33:8081 in a browser and start configuring!
==========================================================================
Service prüfen:
sudo systemctl status iobroker.service
Optional:
sudo chmod -v 755 /home/iobroker
🔧 Fehlerdiagnose und Wartung
Diagnoseskript starten:
iob diag
ioBroker-Fixer:
iob stop && iob fix
Oder direkt aus dem Internet:
iob stop && curl -fsSL https://iobroker.net/fix.sh | bash -
9. Optional: Sudo-Berechtigungen des ioBroker-Benutzers prüfen oder anpassen
sudo nano /etc/sudoers.d/iobroker
(Bei einem Problem kann der ioBroker-Fixer dies automatisch reparieren.)
Der Benutzer iobroker hat ohne Passworteingabe weitreichende Berechtigungen – darunter das Herunterfahren, Neustarten, Starten von Diensten und Ausführen von Befehlen auf dem System sowie spezielle Berechtigungen für den ioBroker-Dienst.
Es ist wichtig, dass die Pfade in der sudoers-Konfiguration exakt mit den tatsächlichen Installationspfaden der Befehle auf deinem System übereinstimmen.
Diese Datei sollte mit restriktiven Rechten gesichert werden:
sudo chmod 444 /etc/sudoers.d/iobroker
Wenn du die Datei bearbeiten möchtest, kannst du die Berechtigungen kurzzeitig anpassen:
sudo chmod 644 /etc/sudoers.d/iobroker
sudo nano /etc/sudoers.d/iobroker
sudo chmod 444 /etc/sudoers.d/iobroker
💡 Hinweis:
Achte darauf, nach dem Bearbeiten die Berechtigungen wieder aufchmod 444zu setzen,
um die Sicherheit der Datei zu gewährleisten.