IServ

Aus Debacher-Wiki
Wechseln zu: Navigation, Suche

Bei IServ handelt es sich um einen Linux-Server für Schulen. Das System basiert auf Debian und zeichnet sich durch eine sehr umfangreiche Bedienoberfläche aus. Mit dem Funktionsumfang von IServ konnte ich auch Kollegen überzeugen, die bisher auf Windows-Server gesetzt haben.

Der Server dient mittels Samba als Domänen-Server für das schulische Netz, das ist aber eigentlich schon selbstverständlich. Sehr praktisch ist, dass zu jeder Gruppe von Benutzern, z.B. einer Klasse, immer auch ein Gruppenordner gehört. Ein Benutzer kann seinen persönlichen Ordner sehen und die Gruppenordner der Gruppen in denen er Mitglied ist.

Über das Webinterface sind alle Dateien auch vom heimischen Arbeitsplatz erreichbar. Man kann Dateien sowohl herunter, als auch hoch laden. Zusätzlich verfügen Benutzer und Gruppen automatisch über eine Mailadresse, so dass die Kommunikation in der Schule sehr erleichtert wird.

Daneben gibt es natürlich:

  • Foren
  • Chat
  • Kalender
  • ..

Sehr nützlich ist auch die Integration von Opsi in das System. Damit lassen sich Rechner ganz leicht über das Netz installieren und Softwarepakete auch nachträglich über das Netz installieren. Der Administrator kann daheim oder am Strand sitzen und bei Bedarf sein gesamtes Netzwerk remote aktualisieren.

Ein weiteres Schmankerl, welches leider nur sehr spartanisch dokumentiert ist, ist das Infodisplay. Man kann einen Rechner so einrichten, dass es ohne weitere Benutzerinteraktion z.B. den Vertretungsplan anzeigt. Bei mehrseitigen PDF-Dokumenten wechselt die Seite automatisch in einem einstellbaren Zeitraum.

Hier die Schritte, die man braucht um den Terminalrechner funktionsfähig zu bekommen:

IServ-Infodisplay Anleitung

Version vom 1.8.2012 UD

Für die Erstellung der Info-Displays funktioniert folgendes Vorgehen.

  1. Wir erstellen einen IServ-Benutzer für jede der Anzeigen. Idealerweise steckt im Benutzernamen ein Hinweis auf das Gerät. Beim Benutzer info.display51 gibt die Zahl die letzte Stelle der IP-Adresse an. Der Benutzer bekommt auch ein Passwort.
  2. Wir nehmen einen „normalen“ Rechner, der per Softwareverteilung installiert wurde. An diesem Rechner werden folgende Veränderungen vorgenommen:
    1. Einspielen des folgenden Registy-Patches:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon]
"AutoAdminLogon"="1"
"DefaultDomainName"="Schule"
"DefaultPassword"="geheim"
"DefaultUserName"="info.bildschirm51"
"ForceAutoLogon"="1"
    1. Anmelden als der gewünschte Benutzer und installieren der Firefox-Extension r-kiosk von Firefox aus.
    2. Anpassung der Datei c:\Programme\Mozilla Firefox\mozilla.cfg Dort steht als Startseite c:\schule-rlw.de/idesk/ drin, diese URL muss ergänzt werden zu c:\schule-rlw.de/idesk/infodisplay/ Die hier gemachte Vorgabe lässt sich vom Benutzer nämlich nicht überschreiben.
    3. Der Desktop-Link für Firefox wird ins Startmenü in den Unterordner Autostart kopiert.
    4. Der Bildschirmschoner muss abgeschaltet (rechte Maustaste auf den Desktop...) und in den Energieoptionen (Systemsteuerung...) das Abschalten des Bildschirms unterbunden werden.
  1. Der Rechner wird dann in die Liste der Anzeigegeräte für das Infodisplay aufgenommen. Dadurch kann man von IServ aus flexibel festlegen, welcher der Infobildschirme auf dem Gerät angezeigt wird.

Zugriff auf den Rechner, falls nötig:

  1. Der Firefox lässt sich im Kiosk-Mode über den Taskmanager killen.
  2. Klickt man das Firefox-Icon mit gedrückter Shift-Taste an, dann startet der Profile-Manager, über den man Firefox in einem abgesicherten Modus starten und konfigurieren kann.
  3. Muss man an das System heran, so deaktiviert man den Display-Benutzer über IServ und meldet ihn dann auf dem Rechner ab (vorher Firefox killen) dann landet man im Anmeldebildschirm, da eine automatische Anmeldung erfolglos bleibt.

Erkenntnisse am Rande

  1. Benutzer werden beim Löschen nur deaktiviert und dann nach 90 Tagen erst wirklich gelöscht. Will man eine sofortige Löschung erreichen, so gibt man an der Konsole ein:
     iservuserdel --purge <benutzername>
  2. Die Profildaten eines Benutzers liegen unter i:\Remote\Anwendungsdaten\<Anwendung> bzw. auf dem Server in /home/info.bildschirm51/Windows/Remote/Anwendungsdaten/<Anwendung>.


Der Raspberry Pi als InfoTerminal

Es juckt einem ja in den Fingern den netten kleinen Raspberry Pi als Rechner für ein InfoDisplay einzusetzen. Das Gerät ist klein, leise und preiswert. Für etwa 60 Euro bekommt man folgende Komponenten:

  • Rechner (36€)
  • Gehäuse (6€)
  • Netzteil (6€)
  • Speicherkarte 8GB (8€)
  • Monitorkabel, entweder HDMI auf HDMI oder HDMI auf DVI (8€)

Ich habe mir das Standard-Image (Raspbian Wheezy: 2013-09-25-wheezy-raspbian.zip) besorgt, entpackt und mittels dd auf eine 8GB Speicherkarte kopiert. Ich bin dabei nach der Anleitung unter http://www.chip.de/downloads/Raspbian-wheezy-fuer-Raspberry-Pi_56691903.html vorgegangen.

Zum dd noch eine kleine Ergänzung. Ziel ist nicht die Partition auf der Speicherkarte, sondern die Karte als Ganzes. Bei mir wurde beim Einlegen der Speicherkarte ein Gerät unter /dev/sdd1 erkannt. Dann also:

umount /dev/sdd1
dd if=2013-09-25-wheezy-raspbian.img of=/dev/sdd bs=1M

Die Karte in den Pi eingelegt und mich gemäß Anleitung durch das Konfigurationsscript gehangelt, welches beim ersten Boot gestartet wird. Dabei habe ich eingestellt, dass der Pi in die grafische Oberfläche starten soll. Wichtig war mir auch den ssh-Server zu aktivieren.

Auf der kleinen Kiste habe ich dann in der Konsole folgende Pakete nachinstalliert:

  • apt-get install iceweasel (nur für den Fall, dass ich den Firefox mal benutzen möchte)
  • apt-get install joe
  • apt-get install synaptic
  • apt-get install xrdp
  • apt-get install unclutter

Wichtig dabei sind mir der Editor joe und der xrdp-Server über den ich dann mit jedem RDP-Client von anderen Rechnern aus auf die grafische Oberfläche des Pi zugreifen kann.

Nun muss nur noch ein Browser im Fullscreen-Modus gestartet werden, der die Seiten für das Info-Display aufruft und anzeigt. Zuerst habe ich mit Firefox (Iceweasel) und r-Kiosk gearbeitet (s.o.), aber der Browser muss ja auch automatisch gestartet werden. Dabei ist mir aufgefallen, dass der mitgelieferte Browser midori alle Fähigkeiten von Natur aus mitbringt.

Ich habe also nur die Datei /etc/xdg/lxsession/LXDE/autostart editiert und um die letzte Zeile ergänzt:

@lxpanel --profile LXDE
@pcmanfm --desktop --profile LXDE
#@xscreensaver -no-splash
@/usr/bin/midori -e Fullscreen -a http://schule-rlw.de/idesk/infodisplay/

Wirklich einfach und das funktioniert. Die xscreenserver-Zeile habe ich auskommentiert, aber das Tool ist standardmäßig sowieso nicht installiert.

Was die kleine Kiste dann anzeigt kann man dann wieder über IServ konfigurieren. Der Pi braucht übrigens auch weder Tastatur noch Maus, um zu booten. Also nur Strom, Netzwerk und den Monitor. Falls mal etwas einzustellen oder zu konfigurieren ist, so kann man das per SSH oder grafisch z.B. per RDP auch von Windows-Rechnern ausmachen.

Das Ausschalten des Pi lohnt sich kaum, aber der angeschlossene Monitor muss ja nachts nicht laufen. Ich habe mir daher zwei kleine Scripte geschrieben:

monitor-aus.sh

#!/bin/bash
#
/usr/bin/tvservice --off


monitor-an.sh

#!/bin/bash
#
#/usr/bin/tvservice --preferred; fbset -depth 8; fbset -depth 16; xrefresh
/usr/bin/tvservice -p && chvt 1 && chvt 7

die zweite Version ist auf alle Fälle für Fernseher passender. Hier wird der bevorzugte HDMI-Modus aktiviert und dann auf Konsole 1 gewechslet und anschließend wieder auf die Grafik-Konsole 7. Ohne diese Umschaltungen würde man nur einen schwarzen Kasten bekommen (siehe auch http://the-martins.org/?p=81 und http://pi-buch.info/?p=413).

und dann einen passende Crontab für root erstellt:

# m h  dom mon dow   command
12 19 * * * /home/pi/monitor-aus.sh
14 07 * * * /home/pi/monitor-an.sh

Nachtrag 29.10.2014

Leider habe ich die Software auf dem Raspi aktualisiert. Seit der Aktualisierung läuft der Midori nicht mehr. Vermutlich das gleiche Problem wie unter https://bugs.launchpad.net/midori/+bug/1220236 beschrieben. Ich benutze jetzt also wieder firefox mit r-kiosk.


Nachtrag 02.09.2015

Neuerdings ist der Autostart über folgende Datei geregelt:

/etc/xdg/lxsession/LXDE-pi/autostart

r-Kiosk ist in der Addon-Verwaltung von Firefox nicht unbedingt zu finden. Einfacher geht es dann über den folgenden Link:


Bildschirmschoner ausschalten

#!/bin/sh

# /etc/X11/xinit/xinitrc
#
# global xinitrc file, used by all X sessions started by xinit (startx)

xset s off         # aktiviert keinen Bildschirmschoner
xset -dpms         # deaktiviert DPMS (Energy Star) Features.
xset s noblank     # deakviviert blank the video device
# invoke global X session script
. /etc/X11/Xsession

Es gibt noch weitere Hinweise auf Abschaltmöglichkeiten:

/etc/kbd/config

BLANK_TIME=0

/etc/xdg/lxsession/LXDE/autostart

@xset s off
@xset -dpms
@xset s noblank


Nachtrag vom 22.11.2016

Bei der neuesten Version des Raspi hat sich die Konfiguration wieder etwas verändert. Das hängt mit der neuen Oberfläche Pixel zusammen.

Ich habe mir jetzt zum Starten des Firefox eine Datei /home/pi/.config/autostart/firefox.desktop angelegt, mit folgendem Inhalt:

[Desktop Entry]
Name=Firefox
Exec=/bin/bash /home/pi/autostart.sh
Type=application

Diese Start-Datei verweist dann auf /home/pi/autostart.sh:

#!/bin/bash

xset s off
xset -dpms
xset s noblank
/usr/bin/firefox http://schule-rlw.de/idesk/infodisplay/

Zum nächtlichen Ausschalten des Monitors nutze ich das Script /home/pi/monitor-aus.sh

#!/bin/bash
#
/usr/bin/tvservice --off

Eingeschaltet wird der Monitor dann per /home/pi/monitor-an.sh

#!/bin/bash
#
/usr/bin/tvservice --preferred
/bin/chvt 1
/bin/chvt 7


Nachtrag vom 8.10.2017

Die Benutzung von Firefox als Browser hat sich nicht wirklich bewährt. Ein großer Teil der Ausfälle ist auf Probleme mit dem Firefox zurück zu führen.

Die neue Raspbian-Version liefert den Browser Chromium mit aus, der auch schon installiert ist. Chromium unterstützt von Haus aus einen Kiosk-Modus.

/usr/bin/chromium-browser --kiosk --prox-pac-url=http://schule-rlw.de/wpad.dat  http://schule-rlw.de/idesk/infodisplay