{{tag> }} ====== Aufgaben zum Schuljahreswechsel (v7.x) ====== Offizielle Anleitungen für die LMN zu folgenden Aufgaben: * Schüler in eine neue Klasse direkt versetzen, in dem man [[https://docs.linuxmuster.net/de/latest/systemadministration/schoolconsole/index.html#listenverwaltung|die Listenverwaltung der WebUI als Administrator]] nutzt * :todo: fehlt? Tauschverzeichnisse leert * :todo: fehlt? Lehrer aus alten Klassen entfernt Weitere Anleitungen: * Für den Umgang mit Benutzern der Nextcloud (per LDAP eingebunden) gilt folgende Seite weiterhin: [[anwenderwiki:owncloud:schuljahreswechsel]] * Für den Umgang mit Benutzer in Moodle ... hm... was macht man da? ===== Noch laufende Klassenarbeiten beenden ===== Hier ein Skript aus dem Forum, wie man noch (unbeabsichtigt) laufende Klassenarbeiten entfernt bzw. Verzeichnisse entfernt die trotz beendeter Klassenarbeiten noch liegengeblieben sind. # erster Teil stammt von Tobias Heine (linuxmuster-Forum Dez2020) cd /srv/samba/schools/default-school/examusers/ for dir in $(ls); do student=$(echo $dir | cut -d\- -f1) active_exam=$(sophomorix-user -iu $student |grep -i exammode) active_exam=$(echo $active_exam | cut -d" " -f2) if [ $active_exam == "---" ]; then printf "%-10s%-15s%-8s%s\n" $student $active_exam Loesche $dir rm -rf $dir else printf "%-10s%-15s%-8s%s\n" $student $active_exam Behalte $dir fi done # jetzt alle nicht beendeten Klassenarbeiten beenden Zeit=`date -Id` Pfad=transfer/collected/autoend Zeitpfad=$Pfad$Zeit cd /srv/samba/schools/default-school/examusers/ for i in "$(ls)"; do echo "Beende den Klassenarbeitsmodus für:" $i sophomorix-exam-mode --unset --subdir $Zeitpfad --participants $i done ===== Tauschverzeichnisse händisch leeren ===== Auf dem Server, ersetze "default-school" durch deine Schule, falls ihr ein Mehrschulsystem habt. - Finde heraus, was sich in den Tauschverzeichnissen überhaupt befindet # find /srv/samba/schools/default-school/share/classes/ - Lösche alle regulären Dateien # rm -r /srv/samba/schools/default-school/share/classes/*/* - Lösche danach alle versteckten Dateien (die mit "." beginnen) # rm /srv/samba/schools/default-school/share/classes/*/.??* Achtung: der Befehl hantiert direkt auf dem Filesystem. Das ist eigentlich nicht so vorgesehen. Besser wäre ein smbclient-Befehl an dieser Stelle oder wenigstens ein smbmount und dann die obigen Befehle. Siehe ASK-Eintrag [[https://ask.linuxmuster.net/t/alle-jahre-wieder-schuljahreswechsel-v7/4125/5|hier von JeffBeck, Stichwort "rumfroschen"]]. ===== Lehrer händisch aus Klassen entfernen ===== Auch wenn es andere Methoden gibt, Klassen zu leeren, hier die manuelle Variante, abgekürzt, damit man es halbwegs lesen kann: for i in 5a 5b 5c 6a 6b k1 k2 ; do sophomorix-class -c $i --admins "" ; done Das setzt alle Admins auf den leeren String, d.h. niemand ist Administrator in der Klasse. Stellt sich noch die Frage, wie man an die Liste der aktuellen Klassen kommt? Hier eine Möglichkeit: sophomorix-class -i Der Output ist formatiert. Mit folgender Zeile kann alle gewünschten zu leerenden Klassen bekommen, in dem man in der Liste am Ende des Befehls alle nicht zu leerenden Klassen rausfiltert, ''grep -vE 'eins|zwei|drei|usw''' . Dabei sind "Class" und "adminclass" dazu da die erste und letzte formatierte Zeile aus dem allgemeinen Befehl zu filtern. sophomorix-class -i | grep '^|' | grep -vE 'Class|adminclass|praktikanten|attic'| awk -v ORS=' ' '{print $2}' Alles in allem geht es dann vielleicht so: adminsweg=$(sophomorix-class -i | grep '^|' | grep -vE 'Class|adminclass|attic'| awk -v ORS=' ' '{print $2}') echo $adminsweg for i in $adminsweg ; do sophomorix-class -c $i --admins "" ; done ===== Klassen löschen / Leere Klassen löschen ===== Folgende Befehle sind für manche sinnvoll, z.B. wenn sie den Schuljahreswechsel so gestalten, dass alle Schüler aus der CSV entfernt werden (in attic geschoben werden), dann aufgeräumt wird und dann die Schüler wieder in die CSV kommen (mit neuer Klassenzuordnung). Dank an [[https://ask.linuxmuster.net/u/gpeter|@gpeter]] für die Zusammenfassung: Entweder über Ändern des Status' ## Ändern des Status von Permanent auf "M" sophomorix-class -c 02fs02 --status M ## anschließenden löschens dieser so umgestellten Klassen per sophomorix-class --delete-all-empty-classes oder direktes Löschen: ## direktes Löschen einer Klasse unabhängig von Status und Besitz sophomorix-class --kill --class 01fsu02