Chromium Kiosk auf Debian Bookworm 12 automatisch starten
Ich wollte meinen Raspberry Pi so einrichten, dass Chromium im Kiosk-Modus automatisch startet, mehrere Tabs öffnet, die sich automatisch durchwechseln, und dass sich das Gerät einmal in der Nacht neu startet. Hier ist, wie ich das auf Debian Bookworm 12 umgesetzt habe.
1. Systemd-Service für Chromium Kiosk erstellen
Zuerst legen wir einen Systemd-Service an, der beim Hochfahren automatisch Chromium startet:
sudo nano /etc/systemd/system/chromium-kiosk.serviceInhalt der Datei:
[Unit]
Description=Chromium Kiosk Mode
After=graphical.target
[Service]
User=pi
Environment=DISPLAY=:0
Environment=XAUTHORITY=/home/pi/.Xauthority
ExecStart=/home/pi/start-chromium.sh
Restart=always
RestartSec=5
[Install]
WantedBy=graphical.targetErklärung:
User=pi→ Chromium läuft unter dem Benutzerpi.Environment=DISPLAY=:0→ Zeigt auf den Hauptbildschirm.ExecStart→ Start-Skript für Chromium.Restart=always→ Startet Chromium neu, falls es abstürzt.WantedBy=graphical.target→ Startet den Service nach der grafischen Oberfläche.
Danach den Daemon neu laden und den Service aktivieren:
sudo systemctl daemon-reload
sudo systemctl enable chromium-kiosk
sudo systemctl start chromium-kiosk2. Start-Skript für Chromium anlegen
Jetzt erstellen wir das Start-Skript, das Chromium mit allen gewünschten Optionen öffnet:
nano /home/pi/start-chromium.shInhalt:
#!/bin/bash
/usr/bin/chromium \
--kiosk \
--noerrdialogs \
--disable-infobars \
--disable-session-crashed-bubble \
--disable-translate \
--disable-features=TranslateUI \
--disable-features=RendererCodeIntegrity \
--disable-prompt-on-repost \
--disable-save-password-bubble \
--disable-browser-side-navigation \
--disable-component-update \
--disable-background-networking \
--no-first-run \
--no-default-browser-check \
--disable-notifications \
--disable-restore-session-state \
--disable-popup-blocking \
--disable-features=TabHoverCards,TabHoverCardImages \
'https://site1.example' \
'https://site2.example' \
'https://site3.example' \
'https://site4.example'Erklärung:
--kiosk→ Vollbildmodus ohne Menüs.--disable-*→ Entfernt störende Meldungen und Popups.- Die URLs am Ende → Tabs, die beim Start geöffnet werden.
- Tabs automatisch durchwechseln: Dafür habe ich ein Add-on aus dem Chrome Web Store verwendet, das die Tabs in einem festen Intervall rotiert. So bleibt der Bildschirm immer aktuell und zeigt alle Seiten abwechselnd an.
Vergiss nicht, das Skript ausführbar zu machen:
chmod +x /home/pi/start-chromium.sh3. Zusätzliche Automatisierungen
Damit der Pi zB. jeden Morgen frisch startet, nutzen wir cron:
sudo crontab -eFüge folgende Zeile hinzu:
# Updates immer Sonntags um 20 Uhr installieren
0 20 * * 0 apt update && apt upgrade -y
# Täglicher Reboot
0 7 * * * /sbin/reboot
# Angeschlossenen Monitor zu bestimmter Uhrzeit ausschalten
0 17 * * * /bin/bash -c 'echo "standby 0" | /usr/bin/cec-client -s -d 1'
Fertig!
Beim nächsten Boot startet Chromium automatisch im Kiosk-Modus mit allen Tabs, und jeden Morgen um 6 Uhr führt der Raspberry Pi einen Neustart durch. Ideal für Digital Signage, Infoterminals oder permanente Dashboards.