Benutzer-Werkzeuge

Webseiten-Werkzeuge


 [[anwenderwiki:classroom_management:maussk_v1]] 

MAusSK Version 1.x - für linuxmuster.net 7.x (ab 2023)

(MAusSK = Monitore Aus + Schul-Konsole)

Programm befindet sich in der Testphase, Probleme, Fehler und Anregungen bitte über das → Forum rückmelden.

Ab Version 1.x der MAusSK ist der Serverdienst „schukodaemon“ in Python implementiert und dadurch performanter. Ebenso wurden weitere Funktionen (→ Changelog) hinzugefügt, so dass alle Teile der MAusSK (Serverdaemon, Clientdaemon, Benutzerprogramm MAusSK, Android-App) bei einem Update ersetzt werden müssen. Die bisherigen Konfigurationsdateien sollten durch die neuen Konfigurationsdatein ersetzt werden, da viele weitere Optionen hinzukamen.

Das System wurde mit linuxmuster.net 7.1, Ubuntu 22.04-Client und Windows 10-Client getestet.

Hier gehts zur Vorgängerversion → MAusSK 0.9x
Hier gehts zur Android-App → MAusSK-App für Android

Download aktuelle Version: maus_sk_1.11f.tar.bz2

1.) Installation am Server

Installationspaket herunterladen und entpacken, man erhält ein Verzeichnis maussk.files/ .
Am server als root anmelden und Script starten:

# cd maussk.files
# ./install-server.sh

Die Konfigurations-Datei findet man danach unter /etc/linuxmuster/maus/schukodaemon.cfg. Bei der Installation werden auch Dateien und Keys erzeugt, die bei Punkt 2.) zum Client kopiert werden. Am Server wird der schukodaemon als systemd-Service gestartet und schreibt (falls aktiviert) log-Dateien.

2.) Installation am Linux Client Ubuntu 22.04

Der Client benötigt während des Installationsprozesses auch für den User root Internetzugang, da dabei Pakete installiert werden.
Am Linux-Client als ein Lehrer anmelden, ein Terminal starten und sich zum lokalen User root des Linux-Clients machen. Danach in das von Server eingebundene Programmverzeichnis wechseln und die Installation ausführen:

$ sudo su
# cd /home/<Lehrername>/media/Programs (K:)/maus_sk
# ./install-ubuntu-client.sh

Damit am Linux-Client das Bildschirm-Sperren funktioniert, muss für den User root ein (beliebiges) Kennwort gesetzt sein, da die Sperre über einen „Bildschirm-Locker“ realisiert wird, der mit Benutzerrechten des User root läuft.

Die Konfigurations-Datei befindet sich am Server unter /srv/samba/schools/default-school/program/maus_sk/maus_sk.cfg. Sie kann nur am Server editiert werden, da der Client für alle User nur Leserechte auf das Verzeichnis besitzt (auch der global-admin kann in der Standardkonfiguration nur lesen!). Ebenso liegt das Binary von MAusSK am Server, so dass bei Updates nicht unbedingt ein neues Image geschrieben werden muss. Nur der mausdaemon wird lokal am Client installiert. Die Installatonsdateien zum mausdaemon liegen lokal am Client unter /etc/linuxmuster-maus/.


Um bei der Instalation auch ein VNC-Kennwort am Client lokal zu setzen kann die Option „- - vnc“ verwendet werden:

# ./install-ubuntu-client.sh --vnc

Zur lokalen Installation des MAusSK-UI am Client im Verzeichnis /opt/maus_sk/ kann die Option „- - lokal“ verwendet werden:

# ./install-ubuntu-client.sh --lokal

Ein update der MAusSK auf dem Server muss nun jedesmal neu auf den Client übertragen werden. Die Konfigurationsdatei zur MAusSK ist dann /opt/maus_sk/maus_sk.cfg und kann dann dort editiert werden, ebenso die Datei layout.ini. Ggf. muss man die Dateipfade der log-Datei und der individuellen cfg-Datei vom Server-home auf das lokale home umsetzen.

3.) Installation am Windows 10 Client

a) Windows Firewall für den Mausdienst vorbereiten

Der Mausdient-Port kann pauschal mit einem Konsolenbefehl geöffnet werden. An der Eingabeaufforderung am Windows-Client mit Administratorberechtigung ausführen:

C:\> netsh advfirewall firewall add rule name="mausdienst" dir=in action=allow protocol=TCP localport=9731

b) Mausdienst im Windows - logon-Script freischalten

Bei der Installation wird am server unter /var/lib/samba/sysvol/linuxmuster.lan/scripts/default-school/lmn/windows/logon.bat eine auskommentierte Befehls-Zeile eingefügt, die den Mausdienst bei der Benutzeranmeldung startet. Diese Zeile muss durch Löschen von „REM“ aktiviert werden:

REM ### Mausdienst beim login starten ###" 

if exist K:\mausdienst\mausdienst.exe start K:\mausdienst\mausdienst.exe
Das Installationsscript erwartet die Datei logon.bat im Standardpfad (s.o.). Falls die linuxmuster.net-Installation nicht den Standard-Pfad verwendet, muss logon.bat manuell angepasst werden.

c) Weitere Anpassungen

  • Die Screenshots werden unter Windows mit Hilfe des Programms Irfanview erzeugt, das vorab vom admin installiert sein muss. Dabei die Installation für alle User setzen und das Konfigurationsverzeichnis im Programmverzeichnis anlegen.
  • Für VNC benötigt man einen VNC-Server.
  • Zum Starten der MAusSK kann man einen Link auf das Programm anlegen:
    K:\maus_sk\maus_sk.exe

4.) Fernsteuerung: VNC und MAusSK

Um die Clients im Vollbild zu beobachten und auch fernzusteuern verwendert MAusSK VNC.
MAusSK beherrscht selbst kein VNC, kann aber externe Tools, die Viewer, direkt ansteuern und damit automatisch eine VNC-Verbindung aufbauen. Am Linux- oder Windows-Client muss dazu ein VNC-Server aktiv sein. Standardmäßig erwartet MAusSK den VNC-Server auf Port 4711, um nicht mit anderen Anwendungen zu kollidieren, die den normalen VNC-Port 5900 Port benutzen. Dies kann jedoch bei der Konfiguration beliebig angepasst werden, so dass jeder Port möglich ist.
Das bei den Clients festgelegte Kennwort des VNC-Servers muss man bei der Konfiguration der MAusSK setzen, es wird am Server gespeichert - dazu als „global-admin“ an der MAusSK anmelden. Beim Anmelden eines Lehrers an der MAusSK wird dieses Kennwort dann verwendet, so dass der VNC-Viewer damit automatisch gestartet werden kann. Der Lehrer braucht deshalb das Kennwort nicht zu kennen, es sollte auch genügend komplex sein.

Sicherheitshinweis: Mit der Kenntnis des VNC-Kennworts kann sich jeder an den Clients einklinken. Dies ist auch unabhängig von MAusSK möglich, wenn an den Clients ein VNC-Server läuft. An jedem Client ist jedoch das VNC-Kennwort gespeichert, da der dort laufende Server dieses benötigt. Es ist deshalb sinnvoll an Clients, die von Lehrern genutzt werden, keinen VNC-Server aktiv zu haben.

Ab Ubuntu 20.04 wird als VNC-Viewer das Programm remmina verwendet, das leider keine passenden Konsolen-Parameter bereitstellt. Zum Ansteuern von remmina gibt es deshalb im Programmverzeichnis der MAusSK ein Shell-Script „startremmina.sh“, das man ggf. bei Verbindungsproblemen anpassen kann.

Vorgehensweise (falls die einzelnen Schritte noch nicht abgearbeitet wurden):

  1. Installation von x11vnc, remmina
  2. Setzen eines x11vnc-Passworts lokal am Client
  3. x11vnc als Startprogramm bei der Benutzeranmeldung (mehrere Möglichkeiten)
  4. neues Image schreiben
  5. als admin-User bei der MAusSK anmelden und das VNC-Kennwort setzen

Am Windows 10 Client wird als VNC-Viewer und VNC-Server UltraVNC verwendet.

Hinweise zur Installation von VNC

5.) Thumbnails und Screenshots

Die Anzeige der Thumbnails wird in der Datei maus_sk.cfg aktiviert durch:

 GetScreenAbfragen=1

Durch das Aktivieren der Thumbnails werden an den Clients reihum kleine Screenshots erstellt (voreingestellt ist alle 1,3 Sekunden ein Client und 200×150 Pixel). Ein gesamter Durchgang eines Computerraumes von 15 Clients dauert somit ca. 20 Sekunden. Diese Werte können in der Konfiguration verändert werden, jedoch erzeugt man dadurch u.U. eine erhöhte Netzwerklast.
Die Thumbnails sind so klein, dass in ihnen keine personenbezogenen Daten lesbar sind, was Datenschutzhinweise an die Benutzer erübrigt. Die Daten zu den Thumbnails werden direkt zwischen Lehrer-PC und Client ausgetauscht ohne Server-Beteiligung.

Zusätzlich können auch einzelne hochauflösende Screenshots erstellt und abgespeichert werden. Hier ist eine Auflösung von 800×600 voreingestellt, die verändert werden kann. Diese Funktionalität kann vom Administrator für alle ab- oder angeschaltet werden.

Unter Windows werden die Screenshots mit Hilfe des Programms Irfanview erzeugt, das vorab vom admin installiert sein muss. Dabei die Installation für alle User setzen und das Konfigurationsverzeichnis im Programmverzeichnis anlegen.

6.) Raum Layout editieren

Für einen Computerraum kann man das Layout der Thumbnails verändern um z.B. die Thumbnails dem Grundriss des Computerraumes anzupassen. Der Menüpunkt erscheint nur für die AdminUsers, die in der Konfigurationsdatei maus_sk.cfg aufgelistet sind.
Im erscheinenden Editor ggf. zunächst die Größe der Thumbnails einstellen. Die Thumbnailgröße wird für jedes Layout getrennt gespeichert. Die Thumbnails können dann per Maus verschoben werden. Die Größe der Fläche des Layouts kann ebenfalls in gewissen Grenzen verändert werden.
Falls man an einem Client arbeitet, der auch zum Raum gehört, kann man diesen zusätzlich im Layout einblenden, so dass er auch später in der MAusSK erscheint.
Es wird immer das Layout des aktuellen Raumes editiert. Um weitere Räume zu layouten muss man im Hauptmenü den Menüpunkt „Raum wechseln“ verwenden.
Durch Löschen eines Layouts kehrt man wieder zur normalen Auflistung zurück.

7.) Austeilen und Einsammeln

Es wird wie bei der WebUI das transfer-Verzeichnis im User-home verwendet, jedoch werden darin gegenüber der WebUI andere, übersichtlichere Pfade verwendet. Diese Pfade können in der Datei schukodaemon.cfg verändert werden.
Das Verzeichnis eines Lehrers mit den auszuteilenden Dateien ist:
transfer/_Auszuteilen/
Das Verzeichnis eines Schülers mit den ausgeteilten bzw. einzusammelnden Dateien (z.B. des Lehrers Schmitt) ist:
transfer/schmitt_Materialien
Eingesammelte Dateien landen für den Lehrer wie bei der WebUI im Verzeichnis:
tranfer/collected

Zum Austeilen und Einsammeln verwendet der schukodaemon eigene Routinen, die gegenüber der WebUI mit den Sophomorix-Scripten performanter sind. In der Datei schukodaemon.cfg kann das mit der Option UseSophomorix=True|False umgestellt werden.

8.) MAusSK im Blauen / WLAN Netzwerk

9.) Konfigurationsdateien

Die Konfigurationsdatein schukodaemon.cfg und maus_sk.cfg müssen bei einzelnen gleichen Optionen aufeinander abgestimmt sein. Die Konfigurationsdateien e) und f) sind bei einer linuxmuster.net 7 obsolet, werden aber - falls vorhanden - von der MAusSK weiterverwendet.

a) schukodaemon.cfg

Pfad am Server: /etc/linuxmuster/maus/schukodaemon.cfg
Beispieldatei

b) maus_sk.cfg

Pfad am Server: /srv/samba/schools/default-school/program/maus_sk/maus_sk.cfg
Beispieldatei
(bei lokaler Installation unter /opt/maus_sk/maus_sk.cfg)

c) mausdaemon.cfg

Pfad am Ubuntu-Client: /etc/linuxmuster-maus/mausdaemon.cfg
Beispieldatei

d) mausdienst.cfg

Pfad am Server: /srv/samba/schools/default-school/program/mausdienst/mausdienst.cfg. Beim Starten des Dienstes am Windowsclient wird die Datei über die Freigabe K: verwendet.
Beispieldatei

e) room_defaults

Pfad am Server: /etc/linuxmuster/room_defaults
Legt fest, welchen Status die Schaltflächen (Internet/Intranet/URL-Filter) der MAusSK beim Starten haben. Die Datei stammt noch aus einer linuxmuster.6, wird in einer linuxmuster.7 vom System sonst nicht mehr verwendet.
Beispieldatei

f) classrooms

Die Datei sollte angelegt werden, da sonst u.U. MAusSK die Räume nicht richtig zuordnen kann.
Pfad am Server: /etc/linuxmuster/classrooms
Die Datei stammt noch aus einer linuxmuster.6, wird in einer linuxmuster.7 vom System sonst nicht mehr verwendet. Ist die Datei vorhanden, dann wird sie von MAusSK ausgewertet und muss auch gültige Einträge beinhalten - ansonsten werden die Klassenräume anhand der devices.csv mit dem Attribut „classroom-studentcomputer“ ermittelt.
Beispieldatei

g) layout.ini

Pfad am Server: /srv/samba/schools/default-school/program/maus_sk/layout.ini
Beinhaltet die Layouts der Thumbnail-Anordnungen aller Räume.
Beispieldatei

10.) Weitere Optimierungen

Per postsync die Clients individuell anpassen:

  • Das VNC-Passwort /etc/x11vnc.pass patchen, dann kann es ohne neues Image-Erstellen neu gesetzt werden
  • Den MAusSK-Starter /usr/share/applications/maus_sk.desktop an Schüler-Clients löschen

X.) Fehler - Problembehebung

a) Verzögerter Start der MAusSK

  • Problem: Bei Start von MAusSK erscheint manchmal nur ein weißes Fenster, es wird nicht oder nur verzögert die grafische Oberfläche aufgebaut.
  • Ursache: Der Fenstermanager von Ubuntu
  • Lösung: Die Installation eines Paketes:
     apt-get install appmenu-gtk2-module

b) Sperrbild erscheint aber die vollständige Sperre des Desktops erfolgt nicht, das Sperrbild kann vom User geschlossen werden

  • Problem: Der Bildschirmschoner xtrlock startet nicht, der Bildschirm wird nicht gelockt, es erscheint nur das Sperrbild, das aber weggeklickt werden kann.
  • Ursache: für den Benutzer root ist kein Kennwort gesetzt
  • Lösung: Kennwort für root setzen (welches ist egal)

c) schukodaemon läuft nach update nicht mehr automatisch

  • Problem: Nach einem update des schukodaemons auf den systemd-Service startet der schukodaemon-Dienst nicht richtig
  • Lösung: am server den schukodaemon manuell stoppen und starten:
    # service schukodaemon stop
    # service schukodaemon start

Y.) Debugging

a) Überprüfen, ob am Server der schukodaemon läuft:

# service schukodaemon status

oder

# ps -ax | grep schuko

b) Logdatei am Server überwachen:

# tail -f /var/log/linuxmuster/schukodaemon.log

c) Logging am server konfigurieren mit ausführlichen Einträgen (Datei /etc/linuxmuster/maus/schukodaemon.cfg). Verbose mit Werten 0, 1, 2 oder 3.

useLog=0|1
debug=0|1
verbose=0|1|2|3

und dann:

# systemctl restart schukodaemon

d) Logging für den Client konfigurieren (Datei: /srv/samba/schools/default-school/program/maus_sk/maus_sk.cfg). Die Log-Datei wird im User-home unter ./maus/ abgelegt.

debug=0|1
verbose=0|1
DebugLog=0|1
 [[anwenderwiki:classroom_management:maussk_v1]] anwenderwiki/classroom_management/maussk_v1.txt · Zuletzt geändert: 2023/05/18 23:31 von martin.res