Shrink VM

Was tut man nicht alles? Ich hab hier eine VM mit W10Edu 20H2, die gelegentlich gestartet wird, um damit z.B. Wireshark zu testen, Updates zu installieren, eine einzelne Datei in MSO anzusehen oder mit W10 Privacy nachzusehen, was ich alles unter Arch nicht erdulden muss.

Trotzdem wuchert das Ding über die Zeit vor sich hin und will gelegentlich geschrumpft werden. Das geschieht hier so:

Erst einmal aus W10 heraus mit sdelete Platz schaffen:

sdelete -z "C:"

Dann die VM runterfahren und mit VBoxManage die VDI komprimieren:

vboxmanage list hdds
vboxmanage modifymedium disk /pfad/zur/vm/w10edu.vdi --compact

Am Schluss nach Geschmack wegsichern mit tar – oder auch nicht.

webm2mp3

Falls ich es erneut vergesse: Die Konvertierung von webm Dateien im aktuellen Verzeichnis nach mp3 mit ffmpeg:

for i in $(ls *.webm) ; do ffmpeg -i "$i" -vn -ab 192k -ar 44100 -y "${i%.*}.mp3"; done

DSGVO Youtube Video Embed in Moodle

Leider ist eine Funktion wie diese hier nicht Bestandteil des Moodle-Cores:

https://github.com/a-v-l/dsgvo-video-embed

Also darf mensch sich entscheiden: iFrames erlauben und damit Same-Origin-Policy aufweichen – oder nicht-DSGVO-konforme Einbettungen von Youtube und Vimeo Videos zulassen.

Damit es in Moodle so wie im folgenden Bild aussieht – hier eine Beschreibung:

A) Die Scriptlösung von oben aus dem Git herunter laden und auf dem eigenen Server bereitstellen (im Folgenden dann unter domain.tld/dsgvo)

B) In Moodle als Admin:

Webseite > Administration > Darstellung > Zusätzliches HTML > additionalhtmlhead

<link rel="stylesheet" href="https://www.domain.tld/dsgvo/css/dsgvo-video-embed.css">
<script src="https://www.domain.tld/dsgvo/js/dsgvo-video-embed.js"></script>

Speichern.

Das Funktioniert dann für iFrames, die in der Quellcodeanzeige von Atto direkt angelegt werden:

Den Einbettungscode dazu von YT kopieren.

C) Sollen zusätzlich die Automatismen von Moodle überrumpelt werden, dann muss

media_videojs | youtube OFF

sein. Das ist hier zu finden: Webseite > Administration > Plugins > VideoJS Player und blendet dann auch über den per Link oder per Video-Button in Atto eingebundenen Videos das Overlay ein.

Der faule Mittelweg geht bis B.

Multicam BBB

BBB mit 2 Kameras

Mensch kann in BBB zwei Kameras direkt von einem einzelnen Rechner und aus einem einzelnen Login heraus einbinden und diese dann teilen.

Das macht z.B. Sinn um a) sich selbst und b) die eigenen Aufschriebe sehr einfach ins Bild zu bekommen.

BBB mit drei Kameras

Mensch kann aber auch drei Kameras direkt von einem einzelnen Rechner und aus einem einzelnen Login heraus einbinden und diese dann teilen.

Das macht z.B. Sinn, um a) sich selbst b) die eigenen Aufschriebe und c) einen Versuchsaufbau ins Bild zu bekommen.

Da geht bestimmt noch mehr – nur sind meine Webcams alle. Außerdem fehlt mir gerade die Phantasie, was ich auf der vierten Webcam zeigen will 🙂

Mehr zu BBB 2.4.x dann demnächst hier.

WiFi Heatmap

Ich war auf der Suche nach einer schnellen Möglichkeit, die Wifi Qualität hier im Haus (und später evtl. auch mal an der Schule) zu erfassen.

Geht via CLI mit den folgenden Methoden:

# nmcli
nmcli d wifi

# iw
sudo iw dev wlan0 link

# wpa_cli
sudo wpa_cli -i wlan0 scan_results

# wavemon
wavemon

mit den jeweiligen Vor- und Nachteilen bei der Interpretation und Darstellung. Für den Alltag reicht mir hier nmcli.

Eine Heatmap zu erstellen wäre dann die nächste Idee, jedoch will mensch die Ergebnisse ja in hübsch – und möglichst automatisiert. Dazu fand ich die folgenden Projekte:

https://github.com/jantman/python-wifi-survey-heatmap ist schon ein wenig älter und sah mir komplexer aus, als ich es haben wollte.

Das hier https://github.com/Nischay-Pro/wifi-heat-mapper schien der einfachere kleine Bruder zu sein – also getestet.

Die Installation geht mit pip auf einem Arch flott über die Bühne. Auf einem hausinternen Serverchen dann iperf3 gestartet, damit wir einen Endpoint für die Messungen haben. Es folgt die Erstellung einer groben Skizze des zu erfassenden Stockwerkes (z.B. mit Libreoffice Draw). Dieses als PNG oder JPG wegspeichern / exportieren. Die dann folgenden Schritte (die eigentliche Messung) sind auf der Seite bei Github ausführlich beschrieben und gehen einfach von der Hand.

Die Ergebnisse sind dann … nunja … abhängig von der eigenen Geduld, die an zwei Stellen hart auf die Probe gestellt wird: Erstens dauert eine Messung gefühlte Ewigkeiten – und zweitens stürzt whm öfter mal ab. Es speichert aber alle bisherigen Messergebnisse, so dass der Verlust vor allem deswegen nervt, weil die Messung wiederholt werden muss.

Im Ergebnis tauchen dann so Sonderbarkeiten wie im Bild oben auf: Der UDP Scan zeigt ein Loch an einem Messpunkt. Macht nicht wirklich Sinn für mich.

Aber nett anzusehen sind die Bildchen und manchmal bringen sie einen ja schon zum Nachdenken:

Signalstärke

Den AP hinter der Glotze zu verstauen ist selbstverständlich doof und das oben zu sehende Resultat auch zu erwarten. Aber! Die „Heatmap“, die ich erhalte, wenn der dauerblinkende, schwarze, hässliche AP nicht hinterm TV versteckt ist, will ich mir nicht zeichnen lassen. Das Programm erfasst halt nicht den WAF.

Weitere Benutzerlevel in MRBS

Hintergrund: Eine weitere Instanz von MRBS war so einzurichten, dass diese

  1. gegenüber Schulfremden verschlossen ist
  2. Lehrer:innen aber gucken dürfen
  3. das Sekretariat buchen kann und es
  4. trotzdem noch einen gibt, der davon unabhängig Adminrechte hat.

MRBS bringt aber nur die Nutzerlevel 0-2 mit. Doof. Also musste ein weiterer Benutzerlevel her.

  1. Benutzer Lehrer:innen mit „Nur mal gucken“-Rechten
  2. Benutzer Sekretariat mit Buchungsrechten
  3. Benutzer Admin mit administrativen Rechten

Wie das geht, habe ich hier mal aufgeschrieben:

https://codeberg.org/kvfg/aufdemhoehnisch

MRBS und report.php

Wer gerade auf der Suche ist nach einer Möglichkeit, normalen Benutzer:innen in MRBS zu erlauben, selbst Berichte zu erstellen – also die report.php aufzurufen: Das geht in der mrbs_auth.inc

133  
134     // These pages allow users to create and delete entries 
135     case 'check_slot.php':              // Ajax page used by edit_entry.php 
136     case 'del_entry.php': 
137     case 'edit_entry.php': 
138     case 'edit_entry_handler.php': 
139     case 'report.php':                 // diese Zeile ergänzen!
140       return (is_open_to_users()) ? 1 : 2; 
141       break; 
142  
143     // These pages only contain admin features 
144     case 'add.php':                     // Adds a room 
145     case 'del.php':                     // Deletes a room 
146     case 'del_entries.php':             // Ajax page for bulk deletion of entries 
147     case 'edit_area.php': 
148     case 'edit_area_handler.php': 
149     case 'edit_room_handler.php': 
150     case 'import.php': 
151     //case 'report.php':               // diese Zeile auskommentieren
152       $result = 2; 
153       break; 
154 

Und das war es auch schon.

Heidenhöhlen

Kurz hinter Stockach in einem Buchenwald befinden sich die Heidenhöhlen. Wer den Anstieg nicht scheut, findet in der Berlingersiedlung am Fuß des Hanges einen Parkplatz – andere gesellen sich zu den Wohnmobilen auf dem Wanderparkplatz.

Der Rundweg um den Buckel dauert rund eine Stunde inklusive Besichtigung der hübschen Löcher im Sand. Im Sommer wird mensch im Wald von Stechmücken gefressen – aber das ist hier dann auch nicht anders als am Teich selbst.