Hallo,
Danke an alle, die das Thema unterstützt haben! Hier das Ergebnis aus vielen Hinweisen und Tipps aus dem Forum: Ein Kiosk-Client unter LINBO.
Läuft seit einigen Tagen bei mir produktiv auf mehreren Clients mit versch. Hardware.
Kurz gesagt:
Das Skript installiert auf einem Minimal-Debian ein minimales grafisches System aus Openbox + lightdm + Chromium im Kiosk-Modus, richtet einen Benutzer kiosk mit Autologin ein und sorgt durch zusätzliche Services dafür, dass:
- Chromium automatisch startet,
- das Browserprofil immer frisch ist,
- zusätzliche Startskripte flexibel eingebunden werden können,
- Chromium dauerhaft überwacht wird (Neustart bei Absturz oder Monitoränderung).
Die URL und zusätzliche Startskripte kann man einfach z.B. per universellem Postsync patchen.
Zwei Startskripte sind im Download dabei: disable-input_as_kiosk.sh und disable_translate_as_root.sh.
Mehr Info ist auch im Download.
Download - wie immer alles auf eigene Gefahr, also keine Gewährleistung:
kiosk4linuxmuster.net.zip (10,5 KB)
Im Download auch enthalten:
Installationsanleitung Kiosk-Client für linuxmuster.net (LINBO)
----------------------------------------------------------------
Sen 4 linuxmuster.net
mit Unterstützung von chatGPT-5
2025
Lizenz GPL v3
I. Vorbereitung mit LINBO
1. Folge der offiziellen Anleitung (bis vor „Installation Ubuntu bzw. pop!os“)
Erstelle eine neue Hardwareklasse (HWK = „Gruppe“ in der Schulkonsole) z.B. „kiosk“ mit einem neuen Image-Namen z.B. „kiosk“
mit z.B. 30 G für Debian und den Rest für Cache.
2. Anpassungen in der Schulkonsole für Debian
Einträge unter LINBO - Gruppen - HWK (z.B. kiosk) - Stiftsymbol - Partitionen - Stiftsymbol bei Debian - OS - Erweitert
Eintrag bei Kernel: vmlinuz
(statt: „boot/vmlinuz“ bei ubuntu)
Eintrag bei Initrd: initrd.img
(statt: „boot/initrd.img“ bei ubuntu)
Vgl:
3. Anpassungen in der Schulkonsole für Hardware/OS
Einträge unter LINBO - Gruppen - HWK (z.B. kiosk) - Stiftsymbol - Kernel-Optionen
Kernelparameter anpassen, z.B.
dhcpretry=9 nowarmstart
Übersicht der LINBO-Kernelparameter:
dhcpretry - kann auch noch höher gesetzt werden bei schlechter Netzwerkverbindung
nowarmstart - ist unbedingt zu empfehlen, damit Debian seinen eigenen Kernel lädt und nicht den von LINBO beim Warmstart übernimmt.
noefibootmgr - hilft bei BIOS-Systemen eine LINBO-Bootschleife zu verhindern
4. Admin-Hardwareklasse für Admin-Kiosk-Client
Es ist sinnvoll, nicht zu viele Funktionen ins Kiosk-Image einzupflegen, um versch. Kiosk-Clients mit dem selben Image betreiben zu können.
(Die unterschiedlichen Konfigurationen werden später durch Patchen z.B. mit Postsync-Skripten erreicht.)
Dupliziere die HWK unter LINBO - Gruppen - HWK (z.B. kiosk) - Kopiesymbol
und vergebe einen Namen z.B. „kioskadmin“
Konfiguriere diese Admin-HWK für die Image-Erstellung mit dem Stiftsymbol
Achte bei den OS-Start-Optionen unbedingt darauf, dass die folgenden beiden Einstellungen so gesetzt sind:
Autostart AUS
Start AN
II. Installationsanleitung Debian-Minimal mit Benutzer „root“
1. Debian-Minimalsystem installieren
-
Lade das Debian Netinst-ISO herunter (z. B. von https://www.debian.org/distrib/netinst).
-
Bereite einen Client der HWK „kioskadmin“ zur Installation vor.
-
Folge der offiziellen Anleitung zur Installation unter LINBO analog zu „Installation Ubuntu bzw. pop!os“ (ab „Client OS installieren“)
Linux-Client — linuxmuster.net latest Dokumentation -
Während der Installation von Debian:
- Root-Passwort setzen.
- Benutzer test anlegen (wie gefordert).
- Partition für Betriebssystem auswählen, als Einbindepunkt „/“, keine SWAP-Partition
- kein Bootmanager (das macht später LINBO automatisch).
- Paket-Auswahl: nur „Standard-Systemwerkzeuge“, kein Desktop.
2. Erster Login an Konsole als Benutzer root
root
root-Passwort
3. sudo installieren
apt update
apt install sudo -y
4. ssh installieren
apt install openssh-server -y
5. SSH für root erlauben
SSH-Config öffnen:
nano /etc/ssh/sshd_config
Folgende Zeile ändern oder hinzufügen:
PermitRootLogin yes
Datei speichern, dann SSH-Dienst neu starten:
systemctl restart ssh
6. SSH-Zugang für root testen
IP-Adresse des Kiosk-Clients ermittel z.B. mit
ip a
Von einem anderen Rechner aus:
ssh root@<IP-Adresse-des-Kiosk-Clients>
(root-Passwort eingeben → Zugang sollte funktionieren)
7. Benutzer test löschen
Wenn SSH-Zugang als root funktioniert:
deluser --remove-home test
8. Swapfile definieren
Datei öffnen:
sudo nano /etc/fstab
Folgende Zeile anpassen bzw. ergänzen zu:
/swapfile none swap sw 0 0
9. Kiosk-Installaion per Skript
Am besten ab jetzt immer per ssh als root arbeiten:
Bereinigung - nur falls zuvor schon einmal ältere Versionen von kiosk_install.sh installiert waren:
touch kiosk_cleanup.sh && chmod +x kiosk_cleanup.sh && nano kiosk_cleanup.sh
Inhalt von kiosk_cleanup.sh einfügen und speichern und Skript ausführen:
sudo bash kiosk_cleanup.sh
Kiosk-Installaion per Skript:
touch kiosk_install.sh && chmod +x kiosk_install.sh && nano kiosk_install.sh
Inhalt von kiosk_install.sh einfügen und speichern und Skript ausführen:
sudo bash kiosk_install.sh
reboot
Falls nicht später die URL per Skript gepatcht wird, die URL-Datei erstellen und nach dem Muster füllen https://www.abc.de
nano /etc/kiosk/url.conf
III. Image auf den Server hochladen mit LINBO
1. Fahre den PC / die VM herunter und werfe das ISO-Image / die Installations-DVD aus.
2. Folge der offiziellen Anleitung (bei „Erstimage erstellen“)
IV. Image ausrollen mit LINBO
Teste das Image nun auf einem Client
Weise einem Client die Nicht-Admin-HWK (= „Gruppe“ in der Schulkonsole) z.B. „kiosk“ zu.
V. Kiosk-Clients nach Bedarf mit Skripten patchen
Postsync-Scripte
Gut geeignet sind unter linuxmuster.net die Postsync-Scripte, v.a. das „Universelle Postsync-Script“
Linux-Client - Anpassungen mit Postsync-Scripten — linuxmuster.net latest Dokumentation
Dabei ist zu beachten das der „Raum“ von Clients beim universellen Postsync-Script nicht die Raumzuordnung der Schulkonsole ist, sondern aus dem Clientnamen ermittelt wird!
Beipiel für alle Clients mit dem LINBO-Image kiosk:
-
Universelles Postsync-Script (siehe auch offizielle Anleitung)
-
Speicherort auf dem Server /srv/linbo/images/kiosk/kiosk.postsync
-
Im Skript „focalfossa“ ersetzen mit „kiosk“
-
URL-Datei auf dem Server hinterlegen /srv/linbo/linuxmuster-client/kiosk/common/etc/kiosk/url.conf
-
PS: Bei linuxmuster-Installationen mit Caching-Server als LINBO-Server, wird die Ordnerstruktur des universellen Postsync-Scripts auf dem Caching-Server angelegt.
Und das universelle Postsync-Script muss auch auf dem Caching-Server vorhanden sein (Sync zwischen Server und Caching-Server beachten).