Der Raspberry Pi sollte mit einem aktuellen Raspberry Pi OS Lite (64-bit) (ab Version 12) geflasht werden. Alternativ kann auch die Desktop-Version verwendet werden, die Auswahl beeinflusst das Setup.
Mit der neuesten Version ist kein vollwertiger Desktop mehr erforderlich, daher reicht die Lite-Version in der Regel völlig aus.
Das Flashen gelingt am einfachsten mit dem Raspberry Pi Imager. Unter Raspbery Pi OS (other) kann im Imager die Lite-Version ausgewählt werden.
Bei Pi2 gibt es ab Version 12 etwas Probleme - siehe Abschnitt "Setup unter Raspbian 12/13 Desktop".
Im Assistenten von Imager können bereits der Standard-Benutzer pi, SSH-Zugriff und Lokalisierungsoptionen gesetzt werden.
Nach dem Flashen kann die folgende Konfiguration, das App-Setup und die Einrichtung erfolgen.
Die Konfiguration kann am PC über die eingehängte boot-Partition im Ordner kfvkt-almmon
über die Datei config.txt vorgenommen werden, d.h. boot-partition/kfvkt-almmon/config.txt.
Alternativ kann die Demo-Datei direkt auf der Raspberry Pi Konsole angelegt werden bzw. wird später vom Setup erstellt:
nano /boot/firmware/kfvkt-almmon/config.txt
Demo-Konfiguration:
config.txt herunterladenDie Datei enthält genau sechs Zeilen, deren Formatierung nicht geändert werden darf:
FFDemoheim0 = dauerhaft an)2 für die neue VersionDer Alarmmonitor unterstützt sowohl WireGuard (empfohlen) als auch OpenVPN. Das System erkennt anhand der Dateiendung automatisch, welcher Dienst installiert und gestartet werden soll.
Die Konfigurationsdatei muss in den Unterordner vpn innerhalb von
kfvkt-almmon auf der Boot-Partition abgelegt werden
(Pfad auf dem Pi: /boot/firmware/kfvkt-almmon/vpn/).
Datei-Endung: .conf (z.B. wg0.conf). WireGuard ist ressourcenschonender.
Datei-Endung: .ovpn (z.B. FFDemoheim.ovpn). Fallback-Lösung.
Folgenden Befehl als Benutzer pi (root-Rechte erforderlich!) ausführen:
curl -fsSL https://almmon.kfv-kt.de/bin/install.sh | bash
Dieser Befehl lädt das Installationsskript herunter, installiert alle notwendigen Pakete und richtet die Dienste ein.
Wichtig: Es wird ein Neustart des Systems (sudo reboot) empfohlen, nachdem die Installation
abgeschlossen ist.
Während der Initialisierung erscheint das Logo der Kreisbrandinspektion, danach öffnet sich nach ca. 1 Minute der Browser mit dem Alarmmonitor.
Um eine vorhandene Installation auf die neueste Version zu aktualisieren, kann der Installationsbefehl einfach erneut ausgeführt werden.
Update-Befehl (als Benutzer pi):
curl -fsSL https://almmon.kfv-kt.de/bin/install.sh | bash
Das Skript erkennt automatisch die vorhandenen Dienste, stoppt diese, installiert aktualisierte Dateien und startet die Dienste neu.
Hinweis: Raspberry Pi 2 ließ sich mit Raspbian 12/13 nur im Desktop-Modus erfolgreich einrichten – bei Lite bleibt der Bildschirm schwarz.
Achtung: Um wieder Display :0 für Benutzer pi zu verwenden, LightDM deaktivieren und neu starten:
sudo systemctl disable lightdm.service
sudo reboot
Die Desktop-Version unterstützt aktuell nicht korrekt den Kioskmode von Chromium auf Wayland.
Lösung: Downgrade auf X11 mittels sudo raspi-config > Advanced Options > Wayland > X11.
Fix für Raspberry Pi 2 (Image 2024):
sudo cp /etc/apt/trusted.gpg /etc/apt/trusted.gpg.d
sudo ifconfig
sudo systemctl status wg-quick@wg0
Für OpenVPN:
sudo systemctl status openvpn@client
IP-Adresse prüfen:
ip a
sudo systemctl status kfvkt-almmon-display
# Display manuell steuern:
/opt/kfvkt-almmon/bin/display_on.sh
/opt/kfvkt-almmon/bin/display_off.sh
sudo systemctl status kfvkt-almmon-pdf-print
Einzeln überprüfbare Konfigurationsskripte:
sudo /usr/bin/python3 /opt/kfvkt-almmon/lib/config_wifi.py
sudo /usr/bin/python3 /opt/kfvkt-almmon/lib/config_vpn.py
sudo /usr/bin/python3 /opt/kfvkt-almmon/lib/config_url.py
sudo /usr/bin/python3 /opt/kfvkt-almmon/lib/config_autostart.py
Logs:
ls -l /var/log/kfvkt-almmon
journalctl -u kfvkt-almmon-display.service
journalctl -u kfvkt-almmon-pdf-print.service
Manuelle Steuerung:
/opt/kfvkt-almmon/bin/start.sh no-config
/opt/kfvkt-almmon/bin/stop.sh
CUPS wird beim App-Setup automatisch installiert. Manuell:
sudo apt update && sudo apt install cups
lpstat -p
/usr/bin/python3 /opt/kfvkt-almmon/lib/pdf_print_test.py --url "https://kfv-kt.de/files/kfv/2023/downloads/Nachweis_Jugendfeuerwehr_2023.pdf" --printer "<DruckerName>"
Den funktionierenden Druckernamen in Zeile 6 der config.txt eintragen und Service neustarten:
sudo systemctl restart kfvkt-almmon-pdf-print
Achtung: Druckunterstützung funktioniert aktuell nicht, wenn der Bildschirm dauerhaft aktiviert ist.
DISPLAY=:0 scrot /tmp/screenshot.png
Den Screenshot per SCP holen:
scp pi@raspberrypi.local:/tmp/screenshot.png .
Zum zentralen Sammeln von Logs via Sentry oder Glitchtip:
sudo /opt/kfvkt-almmon/venv/bin/pip install sentry-sdk
sudo cp /opt/kfvkt-almmon/etc/logging_sentry.example.conf /etc/kfvkt-almmon/logging_sentry.conf
sudo chmod 640 /etc/kfvkt-almmon/logging_sentry.conf
sudo chown root:pi /etc/kfvkt-almmon/logging_sentry.conf
# DSN eintragen:
sudo nano /etc/kfvkt-almmon/logging_sentry.conf