Benutzer-Werkzeuge

Webseiten-Werkzeuge


anleitung_fuer_linux_kiosk

Installation eines Linux-Kiosk-Clients

(Stand Nov. 2019)

Ziel ist es mit Linux einen Anzeigerechner zu bauen, der nach dem Einschalten hochfährt (BIOS-Einstellung bei einem PC, automatisch bei einem RasPi) und selbständig eine Webseite aufruft. Diese sollte dann per refresh o.Ä. eigenständig Aktualisierungen der Anzeige durchführen, was z.B. tabula.info so macht.

Es wird nur so viel installiert, dass der Rechner automatisch nach dem Booten eine Webseite anzeigt. Welche das ist, steht am Ende der Zeile, die mit chromium-browser beginnt. Diese wird automatisch alle 10 Minuten zurückgesetzt. Natürlich wird die Seite selbst per refresh viel früher den Inhalt ändern. Auf diese Weise wird aber bei fehlender Erreichbarkeit des Webservers (z.B. Netzwerkprobleme, Stromausfall) zumindest die Startseite immer wieder geladen, bis der Server wieder erreichbar ist.

Arbeit als Root

  • Installation einer Debianvariante
    • Raspbian Buster auf Raspberry Pi 3 oder 4
    • Debian Buster firmware-netinst 32 Bit oder 64 Bit ( wähle am Ende ohne Desktopumgebung und Druckserver) auf kleinem PC
  • Wir benötigen einen User, der automatisch angemeldet wird
    • unter Raspbian existiert bereits der User pi
    • unter Debian Stretch bei der Installation einen User anzeige angeben.
  • bei beiden dann als User root die Datei /etc/systemd/system/getty@tty1.service.d/autologin.conf (und ggf. das entsprechende Verzeichnis) anlegen mit dem Inhalt:
    autologin.conf
    [Service]
    	ExecStart=
    	ExecStart=-/sbin/agetty --autologin "anzeige" %I
    • Bei Raspbian natürlich mit „pi“ statt „anzeige“
  • Software nachinstallieren als root oder als pi mit sudo
    apt install xorg fluxbox chromium unclutter xdotool
    • Bei Raspbian heißt das dritte Paket chromium-browser.
    • Nur einmal musste folgendes Paket per Hand nachinstalliert werden
      apt install xserver-xorg-legacy
  • Nun neu booten mit z.B.
    init 6

Eigentliches Einrichten als User

Nach dem Reboot bist du als pi bzw. anzeige angemeldet.

...auf der Kommandozeile

  • Lege im Home-Verzeichnis die folgenden zwei Dateien (deren Namen mit einem Punkt beginnen) mit jeweils einer Zeile an
    .bash_profile
    startx
    .xinitrc
    startfluxbox
  • Nun das Kommando
    startx

    eingeben, damit die grafische Oberfläche erstmals gestartet wird.

...in der graphischen Oberfläche chromium konfigurieren

Alt+F2 drücken, in das aufpoppende Eingabefeld chromium-browser bzw. chromium tippen 1) und starten. In die Einstellungen des Browsers gehen. Dort:

  • → Darstellung → Schaltfläche „Startseite“ anzeigen anklicken, dann im neuen Eingabefeld 2) die Zieladresse 3) eingeben.
  • unwirksam ist: → Beim Start → Bestimmte Seite … öffnen → im Eingabefeld die Zieladresse eingeben.
  • → Erweitert → Sprachen → „Übersetzung von fremdsprachigen Seiten anbieten“ abschalten 4)
  • Beende nun erst Chromium (Alt-F4) und dann Fluxbox (rechte Maustaste und Menüpunkt Exit).

...auf der Kommandozeile

  • Ergänze die neue Datei .fluxbox/startup nach dem MAKE SURE-Kommentar wie folgt:
    .fluxbox/startup
    # MAKE SURE THAT APPS THAT KEEP RUNNING HAVE AN ''&'' AT THE END.
    xset s
    xset -dpms
    unclutter -grab	-visible &
    chromium-browser --incognito --noerrdialogs --no-first-run --kiosk 192.168.2.100 &
    ( while true; do sleep 600; xdotool key --clearmodifiers "alt+0xff50"; done ) &
  • die beiden xset schalten den Bildschirmschoner ab,
  • unclutter verbirgt den Mauszeiger,
  • chromium-browser bzw. chromium (für Debian ändern!) zeigt die Webseite unter der angegebenen IP-Adresse an und
  • die letzte Zeile läuft in der while-Schleife endlos und lädt alle 10 Minuten (10*60sek) die Startseite neu.

Testen

* einen ersten Test kann man jetzt schon mit

startx

durchführen. Verlasse den Browser wieder mit Alt-F4… * Schließlich neu booten & testen

Anmerkung:

Es wird kein Schutz gegen das Beenden des Browsers vorgenommen. Mit Alt-F4 ist man auf der Oberfläche von Fluxbox. An den Rechner sollte also keine Tastatur angeschlossen sein

1)
tab completion funktioniert auch hier
2)
Keiner will wissen, wie lange man danach suchen kann, wenn man glaubt, dass man die Startseite doch schon unter Startseite (s.u.) eingegeben hat…
3)
Diese Adresse sollte typischerweise mit jener in der Datei startup (s.u.) übereinstimmen, da diese alle 10 Minuten aufgerufen wird, jene jedoch nur beim Start.
4)
leider nicht mehr als Kommandozeilenoption wie früher
anleitung_fuer_linux_kiosk.txt · Zuletzt geändert: 2019/11/10 17:36 von cb