Technikerleitfaden

Technikerleitfaden

Wie ein Nixorium-Computerraum funktioniert und wie Sie ihn betreiben, vom ersten Controller über alltägliche Änderungen bis zu Updates und Wiederherstellung. Für Schultechniker, die sich mit PCs und Netzwerken auskennen, aber nicht mit Nix.

Für Nixorium 3.9.0

1. So funktioniert es, kurz gefasst

Ein Nixorium-Computerraum besteht aus drei Teilen.

  • Der Controller. Ein PC im Raum, ein freier Rechner oder der Lehrer-PC. Er verwaltet die Laborkonfiguration, baut das System jedes PCs und verteilt es aus einem signierten Paket-Cache über das lokale Netz. Er führt die Netzwerkinstallation und die Klassenansicht aus und ist der einzige Rechner, der für Installation und Updates Internet braucht.
  • Die Laborkonfiguration. Ein privates Git-Repository im Home-Verzeichnis des Administrators auf dem Controller, ~/nixorium-deployment. Sie beschreibt den ganzen Computerraum: wie viele PCs, das Netzwerk, die Konten, die Software und den Schülerdesktop. Das Menü schreibt sie für Sie, nachdem Sie die Änderungen geprüft haben.
  • Die Schüler-PCs. Jeder wird einmal vom Controller aus installiert, startet danach von der eigenen Festplatte und führt seine Anwendungen lokal aus: Ist der Controller ausgeschaltet, geht der Unterricht weiter; nur Updates und die Klassenansicht warten.

Was wo liegt:

  • Auf dem Controller: die Laborkonfiguration mit ihrem Verlauf, die privaten Schlüssel, die Passwort-Hashes, der signierte Cache.
  • Auf jedem PC, auch auf dem Controller: sein installiertes System, die früheren Systemversionen im Bootmenü, der Schülerordner und seine fünf Snapshots.
  • Außerhalb des Controllers, wenn Sie eine anlegen: die Sicherung (eine verschlüsselte Datei auf einem USB-Laufwerk oder ein privates Git-Repository) und die Passphrase, mit der sie sich öffnen lässt.

Sie verwalten alles über ein Textmenü, Nixorium: Melden Sie sich am Controller als admin an und öffnen Sie es über das Dock, oder geben Sie in einem Terminal nixorium ein. Seine Bereiche sind Computers, Installation, Software und Maintenance, dazu das optionale Assistant. Jede Aktion, die etwas ändert, zeigt vorher eine Zusammenfassung und wartet auf Ihre Bestätigung.

Warum Git? Jedes Speichern im Menü wird zu einem Commit, und jedes System, das der Controller baut, trägt die Revision, aus der es stammt. Ein PC ist aktuell, wenn er die zuletzt gespeicherte Revision ausführt; so weiß das Menü, welche PCs auf dem neuesten Stand sind. Git bewahrt außerdem den Verlauf jeder Änderung auf und lässt sich in ein privates Repository sichern.

Alle technischen Details: Architektur → Systemmodell.

2. Bevor Sie beginnen

Sie brauchen:

  • zwei 64-Bit-PCs mit UEFI, die gelöscht werden dürfen: den Controller und einen ersten Schüler-PC;
  • einen USB-Stick mit dem offiziellen ISO-Image von NixOS 26.05, Minimal (Textkonsole) oder Graphical (GNOME);
  • Internet auf dem Controller, der außerdem Zeitserver im Internet erreichen können muss, und ein Netzwerk, in dem sich die PCs gegenseitig erreichen;
  • für die Netzwerkinstallation den UEFI-Netzwerkstart auf den Schüler-PCs.

Was gelöscht wird. Die Installation löscht die gesamte Festplatte, die Sie bestätigen, auf dem Controller und auf jedem PC. Sie verkleinert Windows nicht und behält keine Partitionen auf dieser Festplatte. Windows auf einer zweiten Festplatte kann bleiben: Das Bootmenü findet es (siehe Dual-Boot). Kopieren Sie vorher alles, was Sie noch brauchen, an einen anderen Ort.

Wer dabei sein muss. Jemand, der das Administratorpasswort verwahrt, und an jedem PC jemand, solange er installiert wird: Das Installationsprogramm fragt am Bildschirm des PCs selbst, welcher Rechner es ist und welche Festplatte gelöscht werden soll.

Klären Sie drei Punkte mit den Verantwortlichen für das Schulnetz:

  • Ein festes Laborsubnetz. Neben der Adresse vom DHCP-Server der Schule erhalten der Controller und die PCs eine feste Laboradresse in einem privaten IPv4-Subnetz Ihrer Wahl, zum Beispiel 10.0.0.0/24. Es darf die Adresse nicht enthalten, die der DHCP-Server der Schule dem Controller gibt: Die Einstellungen lehnen eine Überschneidung ab. Ein /24 hat 254 nutzbare Adressen.
  • Die Netzwerkschnittstelle. Die Ersteinrichtung schlägt die Netzwerkkarte des Controllers vor; die Schüler-PCs brauchen meist keine Einstellung (siehe Abschnitt 4).
  • Die Erlaubnis für den Netzwerkstart. Die Netzwerkinstallation betreibt auf dem Controller einen ProxyDHCP-Dienst neben dem DHCP-Server der Schule. Der Schulserver vergibt weiterhin alle Adressen; der Controller teilt nur den PCs, die über das Netzwerk starten wollen, mit, wo das Installationsprogramm liegt. VLAN-Isolation, eine DHCP-Richtlinie oder ein anderer Dienst auf UDP 67/69 oder TCP 8080 können das verhindern. Über WLAN funktioniert der Netzwerkstart womöglich nicht; die Installation per USB kommt ohne ihn aus.

3. Den Controller installieren

Starten Sie den Controller vom NixOS-ISO im UEFI-Modus, mit Internet. Das Graphical-ISO hilft, wenn das Schulnetz eine Anmeldung im Browser verlangt: Melden Sie sich in Firefox an und öffnen Sie dann das Terminal (ignorieren Sie „Install NixOS“). Führen Sie aus:

curl -fsSL https://nixorium.org/install.sh | bash

Die Website zählt die täglichen Downloads dieses Skripts, nur Datum und Anzahl (Datenschutz). Das Skript lässt Sie die Nixorium-Version wählen, mit einer Vorgabe, und fragt dann:

  1. das Tastaturlayout, aus einer kurzen Liste und sofort aktiv, damit Sie die Passwörter damit eingeben, danach die Zeitzone;
  2. die Kontonamen für Lehrkraft und Schüler (der Administrator heißt immer admin);
  3. drei Passwörter, für Administrator, Lehrkraft und Schüler, jedes zweimal eingegeben;
  4. das anfängliche Softwareprofil, etwa Essential oder Programming;
  5. die Festplatte.

Bis zur Zusammenfassung für die Festplatte, in der Sie ERASE eingeben, ändert sich nichts; eine vertippte Antwort wird erneut abgefragt, eine leere bricht ab. Das Skript installiert den Controller und speichert die Laborkonfiguration in ~/nixorium-deployment, bereits als Commit. Ziehen Sie den USB-Stick ab, geben Sie reboot ein, melden Sie sich als admin an und öffnen Sie Nixorium. Beim ersten Mal zeigt es den Betriebshinweis und fragt nach der optionalen Nutzungsstatistik, die ausgeschaltet bleibt, wenn Sie nicht zustimmen.

Nur-Controller-Modus. Ein neuer Controller startet im Nur-Controller-Modus: Es sind keine Schüler-PCs konfiguriert, daher sind das Labornetz, der Cache und die Fernsteuerungsdienste aus, und der Controller nutzt nur seine Adresse vom DHCP-Server der Schule. Der Computerraum wird eingerichtet, wenn Sie zum ersten Mal Installation öffnen.

4. Das Labornetz

Zwei Adressen auf einer Karte. Jeder Rechner bezieht Adresse, Standardroute und DNS weiterhin vom DHCP-Server der Schule, sodass die Schüler wie gewohnt surfen. Auf derselben Netzwerkkarte trägt jeder Rechner zusätzlich eine feste Laboradresse: die Basis des Subnetzes plus seine Nummer. Mit 10.0.0.0/24 ist pc01 10.0.0.1, pc02 10.0.0.2 und der Controller, standardmäßig pc99, 10.0.0.99. Die Verwaltung nutzt ausschließlich diese festen Adressen: Der Controller verteilt darüber die Updates und öffnet die Klassenansicht, und jeder Schüler-PC nimmt SSH nur von der Laboradresse des Controllers an. Auf einem Schüler-PC bleibt die Laboradresse auch dann bestehen, wenn kein DHCP-Server antwortet.

Die Laboreinstellungen. Wenn Sie zum ersten Mal Installation → Network boot (PXE) oder Installation → USB over SSH öffnen, fragt ein Formular nach dem festen Labornetz und seiner Präfixlänge, der Anzahl der Schüler-PCs (nummeriert ab pc01), der Hostnummer des Controllers (höher als jede PC-Nummer, standardmäßig 99), der aktuellen DHCP-Adresse des Controllers und den Schnittstellen. Das Menü speichert die Angaben, erzeugt die Schlüssel und wendet die Konfiguration auf den Controller an, der damit zum Labor-Controller mit fester Adresse wird. Sobald Schüler-PCs konfiguriert sind, ändert Change settings Subnetz, Präfix und Controllernummer nicht mehr (Code NETWORK-LOCKED): Installierte PCs würden ihre alten Adressen behalten und den Kontakt verlieren. Die Controllernummer bleibt fest, wählen Sie sie also nur einmal; Subnetz und Präfix ändern Sie nur mit dem geführten Wechsel weiter unten.

Namen der Netzwerkschnittstellen. Drei Einstellungen unter Maintenance → Change settings → Network:

  • Controller network interface: Der Controller verwendet immer diesen Namen. Die Ersteinrichtung schlägt die Karte vor, über die seine Standardroute läuft; ändern Sie ihn nur, wenn sich die Karte des Controllers ändert.
  • Client computers’ network interface: Lassen Sie das Feld leer, wie vorgegeben. Dann legt jeder Schüler-PC die Laboradresse auf seine kabelgebundene Ethernet-Karte, egal wie sie heißt, sodass PCs unterschiedlicher Modelle nichts brauchen. WLAN-Karten, Bridges und virtuelle Geräte werden nie gewählt. Tragen Sie nur dann einen Namen ein, wenn alle PCs denselben Kartennamen haben.
  • Shared fallback interface: Der Controller verwendet sie, wenn sein eigener Name leer ist. Schüler-PCs ignorieren sie, sofern kein Client-Name gesetzt ist.

Ein PC mit mehr als einer kabelgebundenen Karte braucht eine Ausnahme für diesen Rechner (hostIfaceNames in der Laborkonfiguration); sonst erhält die Karte, die als erste aktiv wird, die Laboradresse, und das kann sich von Start zu Start ändern. Mit derselben Ausnahme benennen Sie die Karte eines PCs, der WLAN nutzen muss. Das Ändern einer Schnittstelle kann die betroffenen PCs beim Anwenden vom Netz trennen: Die Zusammenfassung warnt davor, prüfen Sie also die Kabel und halten Sie die lokale Konsole bereit.

WLAN. Ist eine WLAN-Karte eingetragen, kommt die Laboradresse auf diese Karte, aber das in der USB-Sitzung gewählte WLAN wird nicht ins installierte System übernommen: Richten Sie diese Verbindung separat ein. Das Schülerkonto kann Verbindungen, Funkschnittstellen und DNS nicht ändern; Lehrkraft und Administrator können es.

Den Computerraum in ein anderes Netz umziehen. Sobald PCs konfiguriert sind, bringt Maintenance → Change network addressing (oder nixorium network migrate) den Controller und alle PCs in ein neues Subnetz, zum Beispiel von 10.0.0.0/24 nach 10.1.0.0/24; jeder PC behält seine Nummer. Schalten Sie vorher die PCs ein, speichern Sie offene Änderungen und beenden Sie die Netzwerkinstallation. Sie geben das neue Netz als Adresse und Präfix ein; die Zusammenfassung listet die Adresse des Controllers und jedes PCs vorher und nachher auf und prüft, ob jeder PC antwortet (ein ausgeschalteter PC hält den Vorgang auf, bis Sie ihn einschalten oder ohne ihn fortfahren). Das Speichern ändert noch keinen PC. Danach folgen die beiden üblichen Schritte, Apply to controller und Update computers: Bis Sie abschließen, antwortet der Controller in beiden Netzen, und jeder PC behält seine bisherige Adresse neben der neuen, sodass nichts den Kontakt verliert. Die Übersicht zeigt den laufenden Wechsel (NETWORK-CHANGING) mit dem nächsten Schritt. Finish wird angeboten, sobald jeder PC die gespeicherte Konfiguration ausführt und unter seiner neuen Adresse antwortet, und Undo funktioniert jederzeit davor. Bereiten Sie danach die Netzwerkinstallation neu vor: Die vorbereiteten Dateien enthalten die Adresse des Controllers (Details).

Die Uhrzeit. Der Controller hält die Uhr des Computerraums über Zeitserver im Internet genau, muss sie also erreichen können (ausgehend UDP 123), und gibt die Zeit nur an das Labornetz weiter: Er öffnet UDP 123 auf der Laborkarte und nirgendwo sonst. Jeder PC fragt den Controller und keinen Zeitserver im Internet: Ein PC mit leerer CMOS-Batterie startet mit der richtigen Zeit, obwohl er selbst kein Internet hat, und Zertifikate, Zeitstempel von Dateien und Protokolle bleiben korrekt. Erreicht der Controller das Internet nicht, gibt er weiterhin seine eigene Uhrzeit aus, ab fünf Minuten nach dem Start. Es gibt nichts zu konfigurieren: Die Änderung erreicht jeden PC mit seinem nächsten Update und den Controller, wenn Sie sie anwenden, und eine Nur-Controller-Installation behält ihre bisherigen Zeiteinstellungen (Details).

Was die Netzwerkinstallation ändert und was sie lässt. Beim Vorbereiten werden das Installationsprogramm und das System jedes PCs gebaut und die aktuelle DHCP-Adresse des Controllers festgehalten; das Netzwerk ändert sich noch nicht. Wenn Sie sie starten (Eingabetaste in ihrer Zusammenfassung), vermerkt der Controller die Sitzung, entfernt seine feste Laboradresse von der Karte und stellt die Bootdateien und den signierten Cache unter seiner DHCP-Adresse bereit. Ein PC, der über das Netzwerk startet, bezieht seine Adresse vom DHCP-Server der Schule, lädt das Installationsprogramm vom Controller und sein System aus dem Cache, geprüft mit dessen Signaturschlüssel. Wird die Netzwerkinstallation beendet, kommt die feste Adresse zurück; nach einem Stromausfall tut der Controller dasselbe beim Start. Solange sie aktiv ist, werden andere Vorgänge wie Updates und die Befehle der Klassenansicht mit dem Code PXE-ACTIVE abgelehnt; beenden Sie sie also, sobald der Computerraum installiert ist. Gibt der DHCP-Server der Schule dem Controller eine neue Adresse, bereiten Sie einfach neu vor (Details). Auf dem installierten PC bleibt nichts Vorübergehendes zurück: Er startet mit seiner DHCP-Adresse plus seiner festen Laboradresse. Die Installation per USB berührt die Adresse des Controllers nie.

Alle technischen Details: Architektur → Netzwerkinstallation.

5. Der erste Schüler-PC

Installieren Sie einen einzigen PC und prüfen Sie ihn, bevor Sie die anderen angehen.

Netzwerkstart. Installation → Network boot (PXE) zeigt immer nur den nächsten Schritt: Dateien vorbereiten, starten, installieren, bei Bedarf das Netzwerk wiederherstellen. Starten Sie den PC über das Netzwerk, mit dem UEFI-Netzwerkstart vor der Festplatte. Das Installationsprogramm öffnet sich von selbst auf seinem Bildschirm, zeigt Hardware und Festplatten und fragt, welcher konfigurierte Rechner das ist. Es lehnt eine Identität ab, deren Laboradresse bereits antwortet, aber Schweigen ist keine Reservierung: Führen Sie eine eigene Liste, welcher PC welcher ist. Es bietet nur Festplatten an, auf denen das System plus 2 GiB Platz hat. Geben Sie in der Zusammenfassung von Identität und Festplatte ERASE ein. Es installiert aus dem Cache des Controllers, prüft das Ergebnis und fragt dann „Reboot now? [y/N]“: Antworten Sie y oder drücken Sie die Eingabetaste, um im Installationsprogramm zu bleiben. Setzen Sie in der Bootreihenfolge des PCs den Netzwerkstart hinter die Festplatte, damit er von seiner Festplatte startet. Wurde die Netzwerkinstallation unterbrochen, wird dieser Bildschirm zu Recover the controller network: Er sagt in einfachen Worten, was er vorgefunden hat, und die Eingabetaste bringt das Netzwerk des Controllers wieder in den Normalzustand, ohne einen Schüler-PC anzutasten.

USB over SSH. Nutzen Sie es, wenn der PC nicht über das Netzwerk starten kann oder nur WLAN hat. Starten Sie den PC vom NixOS-ISO (Minimal bei 4 GB RAM oder weniger), verbinden Sie bei Bedarf das WLAN mit nmtui und führen Sie an seiner Konsole aus:

passwd
systemctl is-active sshd
ip -4 -br address
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub

Lassen Sie diesen Bildschirm sichtbar. Wählen Sie auf dem Controller Installation → USB over SSH, wählen Sie den Rechner aus und geben Sie nur die IPv4-Adresse des Live-Systems ein. Der Controller liest den SSH-Schlüssel des PCs, ohne ein Passwort zu senden, und zeigt dessen Fingerabdruck SHA256:. Vergleichen Sie ihn mit dem auf dem Bildschirm des PCs und geben Sie MATCH ein; erst dann fragt er nach dem temporären Passwort, sodass das Passwort nur an den PC vor Ihnen geht. Wählen Sie die Festplatte und bestätigen Sie die Zusammenfassung. Ziehen Sie den USB-Stick erst ab, wenn der Bildschirm es sagt, und bestätigen Sie dann den Neustart; der Controller prüft danach den installierten PC unter seiner Laboradresse. Bricht die Installation mittendrin ab, öffnet sich der Bildschirm als Resume or close the USB installation: Er zeigt, ob der PC noch vom USB-Stick aus antwortet und ob seine Festplatte schon angetastet wurde, und bietet nur die sicheren Auswege an, etwa Resume the installation oder Cancel safely. Um den Vorgang abzuschließen, nachdem die Festplatte beschrieben wurde, müssen Sie CLOSE eingeben.

Prüfen Sie, bevor Sie weitermachen:

  • Der PC startet von seiner Festplatte in den Schülerdesktop, und Anwendungen, Tastatur, Bildschirm und Peripherie Ihres Unterrichts funktionieren;
  • als Lehrkraft am Controller angemeldet, sehen Sie in Classroom view den Bildschirm des PCs;
  • Computers → Computer inventory zeigt den PC als aktuell;
  • eine vom Schüler gespeicherte Testdatei ist nach einem Neustart verschwunden und in den Snapshots zu finden (siehe Abschnitt 7);
  • ein Update über Computers → Update computers läuft vollständig durch.

6. Der restliche Computerraum und die erste Sicherung

Starten Sie bei aktiver Netzwerkinstallation die übrigen PCs nacheinander über das Netzwerk, wählen Sie jeweils die Identität und geben Sie an jedem ERASE ein. Beenden Sie danach die Netzwerkinstallation; der Controller erhält damit seine feste Adresse zurück. Um später PCs hinzuzufügen, erhöhen Sie die Anzahl der Computer unter Maintenance → Change settings → Computers, wenden die Änderung an und bereiten die Netzwerkinstallation neu vor.

Legen Sie dann mit Maintenance → Back up lab eine Sicherung an: Mit ihr kann ein neuer Controller den Computerraum übernehmen, ohne dass die PCs neu installiert werden. Es gibt zwei Arten:

  • Verschlüsselte Datei: die gesamte Laborkonfiguration, ihr Verlauf, die privaten Schlüssel und die Passwort-Hashes in einer Datei, verschlüsselt mit Ihrer Passphrase. Für ein USB-Laufwerk binden Sie es ein und wechseln in seinen Ordner.
  • Privates Git-Repository: ein privates Repository bei GitHub oder GitLab, erreichbar per SSH. Schlüssel und Passwort-Hashes werden verschlüsselt in einer Wiederherstellungsdatei übertragen; die Konfiguration bleibt für die Mitglieder des Repositorys lesbar. Nach der ersten geprüften Sicherung wird jede gespeicherte Änderung gepusht, solange Nixorium geöffnet ist.

Verwenden Sie eine Passphrase mit mindestens 12 Zeichen und bewahren Sie sie getrennt vom Controller auf: Nixorium speichert sie nie. Die Übersicht erinnert Sie, wenn eine Sicherung fällig ist (Code BACKUP-DUE): bei einer Datei, wenn sich seit der letzten Sicherung Konfiguration, Schlüssel oder Passwörter geändert haben, oder nach 30 Tagen; bei Git, wenn sich Schlüssel, Passwörter oder vertrauenswürdige Computer geändert haben, zum Beispiel nach der Installation eines PCs. Eine Erinnerung blockiert nie etwas.

Alle technischen Details: Architektur → Netzwerk- und Vertrauensgrenzen.

7. Im Alltag

Die Lehrkraft meldet sich am Controller an und öffnet Classroom view über das Dock: alle Schülerbildschirme auf einmal, ein einzelner Bildschirm in eigenem Fenster mit Take control, dazu Lock („Eyes on the teacher“), Share screen, Share files, Block/Allow Internet, Restart und Shut down. Das Internet kommt zurück, wenn ein PC neu startet; ein ausgeschalteter PC erscheint als Off or not reachable. Keiner dieser Befehle ändert die Laborkonfiguration. Sie funktionieren weiter, während der Administrator die Computer aktualisiert: Nur ein PC, der gerade aktualisiert wird oder dessen letztes Update unterbrochen wurde, bleibt unberührt, und die Zusammenfassung sagt das.

Save screenshot, Collect from students’ desktops und Switch on ergänzen diese Befehle. Save screenshot im Fenster eines einzelnen Rechners speichert ein Bild seines Bildschirms in Nixorium/Screenshots, im persönlichen Ordner der Person, die die Klassenansicht benutzt; das funktioniert nur, solange der Bildschirm live übertragen wird: Ein ausgeschalteter Rechner, einer hinter seiner eigenen Bildschirmsperre oder einer ohne angemeldete Person hat nichts zu speichern. Collect from students’ desktops im Menü Share files neben Send a folder… und Send a file… kopiert nach einer Zusammenfassung die Dateien auf den Desktops der ausgewählten Rechner nach Nixorium/Collected in diesem persönlichen Ordner, ein Ordner pro Rechner: Versteckte Dateien und Links bleiben außen vor, auf den Schülerrechnern ändert sich nichts, und ein Rechner mit mehr als 2000 Einträgen oder 500 MB wird gemeldet, und von ihm wird nichts übernommen. Aktualisieren Sie die Rechner zuerst: Ein nicht aktualisierter Rechner wird als noch nicht bereit zum Einsammeln aufgeführt. Switch on unter Power in der Klassenansicht und in Computers → Power controls sendet ein Wake-on-LAN-Paket an die ausgewählten Rechner, die ausgeschaltet sind. Ein gesendetes Paket beweist nicht, dass ein Rechner startet: Seine Firmware (BIOS/UEFI) muss das Aufwecken über das Netzwerk erlauben, er muss nach dem Client-Update, das Wake-on-LAN aktiviert, einmal neu gestartet worden sein, und er muss am Strom bleiben. Niemand tippt eine Adresse ein: Der Controller lernt die Adresse der Netzwerkkarte jedes Rechners selbst, während der Rechner eingeschaltet ist und die Klassenansicht offen ist oder Computer inventory läuft, und ein Rechner, dessen Adresse er noch nicht kennt, wird übersprungen (Details).

Message → Send a message… zeigt einen Text von bis zu 300 Zeichen auf den Bildschirmen der ausgewählten Rechner an, vor allem anderen, auch vor einer Sperre oder einem geteilten Bildschirm. Er bleibt stehen, bis der Schüler ihn schließt (Close erscheint nach 10 Sekunden), 30 Sekunden oder 2 Minuten lang oder bis Sie den Rechner entsperren; Remove message entfernt ihn. Die Schüler behalten Tastatur und Maus, sofern der Rechner nicht gesperrt ist, und beim Abmelden verschwindet die Nachricht. Aktualisieren Sie die Rechner zuerst und lassen Sie die Schüler sich neu anmelden: Ein nicht aktualisierter Rechner wird als noch nicht bereit für Nachrichten aufgeführt (Details).

Um einen Raum für eine Klassenarbeit vorzubereiten, nutzen Sie nacheinander Internet → Block Internet, Lock und Message, danach Share files → Collect from students’ desktops.

Schedule schaltet die Schülerrechner selbstständig ein und aus. Öffnen Sie Power → Schedule… in der Klassenansicht (Save und Clear) oder verwenden Sie nixorium schedule set --on 07:50 --off 18:00 in einem Terminal, als Lehrkraft oder Administrator. Der Zeitplan kennt höchstens eine Einschalt- und eine Ausschaltzeit, für die Wochentage Ihrer Wahl (Montag bis Freitag, sofern --days nichts anderes angibt), in der Zeitzone des Controllers. Das Einschalten ist das gewöhnliche Switch on, es gelten also die Bedingungen oben, und ein Rechner ohne bekannte Netzwerkadresse wird übersprungen. Das Ausschalten unterbricht nie jemanden: Ein Rechner, an dem gerade jemand arbeitet oder dessen Sitzung sich nicht auslesen lässt, bleibt an. Hindert eine Netzwerk- oder USB-Installation den Zeitplan am Start, versucht er es zehn Minuten lang jede Minute erneut und gibt dann für diesen Tag auf. Ein Update der Computer hält ihn nicht auf: Das Ausschalten lässt nur die PCs an, die gerade aktualisiert werden, und nennt den Grund. Der Zeitplan liegt nur auf dem Controller, außerhalb der Konfiguration und der Sicherung: Legen Sie ihn nach einem Austausch des Controllers neu fest (Details).

Bei jedem Start eines PCs, vor dem Anmeldebildschirm, läuft das Zurücksetzen des Schülerordners. Der bisherige Schülerordner wird zu einem von fünf rotierenden Snapshots, schreibgeschützt und ohne Laufzeitdaten wie globale npm-Pakete, Docker-Images und gespeicherte Anmeldungen. Dann wird ein sauberer Ordner aus der vorbereiteten Arbeitsumgebung der Schüler erstellt, und die Schülersitzung startet automatisch. Die Lehrkraft findet die Snapshots unter Snapshots in der Seitenleiste der Dateiverwaltung, wenn sie an diesem PC angemeldet ist. Snapshots liegen auf derselben Festplatte und sind daher keine Sicherungen: Eine defekte Festplatte nimmt sie mit, und eine Sitzung verschwindet nach fünf weiteren Starts. Arbeit, die bleiben soll, gehört auf einen USB-Stick oder in den Cloud-Speicher der Schule. Kann ein Zurücksetzen nicht abgeschlossen werden, sperrt der PC die Anmeldung: Versuchen Sie es nicht erneut, sondern lassen Sie zuerst den Administrator das Journal lesen (Details).

Konten.

  • admin, der Administrator: Ihm gehört die Laborkonfiguration auf dem Controller, mit sudo und SSH.
  • Die Lehrkraft: ein persönlicher Ordner, der erhalten bleibt, die Klassenansicht mit ihren Befehlen und Lesezugriff auf die Snapshots.
  • Die Schüler: ein einziges gemeinsames Konto auf jedem PC, automatisch angemeldet, ohne Administratorrechte und mit einem Schülerordner, der bei jedem Start zurückgesetzt wird. Sein Passwort ist überall dasselbe.

Die Konten sind Teil der Konfiguration, daher ändert passwd sie nicht. Verwenden Sie Maintenance → Change settings → Accounts mit Change account names und Change account passwords. Ein neues Passwort gilt auf dem Controller, wenn Sie die Konfiguration anwenden, und auf jedem PC, wenn Sie ihn aktualisieren. Ein umbenanntes Konto beginnt mit einem neuen, leeren persönlichen Ordner.

8. Etwas ändern

Jede Änderung nimmt denselben Weg: im Menü bearbeiten, prüfen, speichern (ein Commit in der Laborkonfiguration), dann anwenden. Das Speichern allein ändert keinen laufenden PC.

  • Software. Unter Software durchsuchen Sie den vom Computerraum festgelegten Paketbestand oder wählen einen Vorschlag oder ein ganzes Profil (p). Wählen Sie das Ziel: gemeinsam (der Controller und alle PCs, jetzige und künftige), nur der Controller, alle Schüler-PCs, eine Gruppe oder ausgewählte PCs. Mit der Eingabetaste auf einem konfigurierten Paket können Sie sein Ziel ändern (c) oder es entfernen (x).
  • Der Schülerdesktop. Unter Maintenance → Change settings → Student workspace bearbeiten Sie Dock, Favoriten und Desktop, den Standardbrowser, die Einstellungen und Erweiterungen von VS Code und die Anfangsdateien des Schülerordners. Vom Profil verwaltete Erweiterungen bleiben der empfohlene Weg. Hat das Profil die Java-Erweiterung und enthält die Software ein JDK, zeigen deren Einstellungen auf dieses JDK. Ein außerhalb von Nix heruntergeladenes Programm, etwa eine Marketplace-Erweiterung mit eigenen Binärdateien, läuft auch für das Personal, das seine persönlichen Ordner behält; Schülerordner verlieren solche Installationen beim Zurücksetzen.
  • Einstellungen. Unter Maintenance → Change settings finden Sie Netzwerk, Computer, Konten, Regionaleinstellungen, Browser und Git.

Geschrieben wird erst, wenn Sie die Zusammenfassung bestätigen. Die meisten Zusammenfassungen bestätigen Sie mit der Eingabetaste (in einem Terminal fragt nixorium Continue? [y/N]); Esc bricht ab. Ein Wort geben Sie nur ein, bevor etwas geschieht, das sich nicht rückgängig machen lässt: eine Festplatte löschen, die Konfigurationsvorlage zurücksetzen, nicht gespeicherte Änderungen verwerfen, dem Schlüssel eines neuen Computers vertrauen, alte Versionen entfernen und, in einem Terminal, PCs herunterfahren oder neu starten, an denen jemand arbeitet. Danach folgen zwei getrennte Schritte:

  • Apply to controller. Nach dem Speichern bietet das Menü Apply to this controller an; Sie finden es auch unter Maintenance → Advanced. Der Controller baut die gespeicherte Konfiguration und wechselt zu ihr, nach einer Zusammenfassung, die zeigt, was sich ändert. Jede Änderung der Einstellungen braucht diesen Schritt. Software, die als gemeinsam oder nur für den Controller gespeichert wird, erledigt ihn direkt nach dem Speichern von selbst.
  • Update computers. Wählen Sie unter Computers → Update computers oder mit Update affected computers nach dem Speichern von Software die PCs aus (n wählt die, die es brauchen; PCs, deren wartendes Update veraltet ist, sind schon ausgewählt) und drücken Sie in der Zusammenfassung die Eingabetaste. Der Controller baut zuerst, dann wechselt jeder PC auf sein neues System, das er vom Controller erhält, und das Menü prüft, welche PCs nun die freigegebene Revision ausführen. Das Update-Protokoll zeigt, wann jeder Schritt begann und wie lange er dauerte, mit der Gesamtzeit am Ende.

Nichts erreicht einen Schüler-PC, bevor Sie ihn aktualisieren. Ein ausgeschalteter PC kommt in eine Warteschlange (in der Zusammenfassung standardmäßig aktiviert). Wird ein PC ausgeschaltet, während das Update gebaut wird, bleibt er unverändert und wird als nicht aktualisiert gemeldet, oder er kommt ebenfalls in die Warteschlange, wenn Sie das gewählt haben; er hält die anderen PCs nie auf. Der Controller versucht es jede Minute und aktualisiert die wartenden PCs, die antworten, gemeinsam; läuft gerade ein anderer Vorgang, wartet er bis zur nächsten Minute. Computers → Queued updates listet diese PCs auf. Ein Eintrag wird nicht angewendet, wenn sich die Konfiguration inzwischen geändert hat: Das nächste Update computers wählt diese PCs für Sie aus, sodass seine Zusammenfassung sie enthält. Während Sie Computer aktualisieren, funktionieren die Klassenbefehle für die übrigen PCs weiter. Nach einem Update zeigt der PC eine Benachrichtigung: Sie fordert einen Neustart, wenn sich der Kernel oder systemd geändert hat; sonst meldet sie, dass das Update aktiv ist, und schlägt einen Neustart nur vor, wenn etwas nicht wie erwartet funktioniert. Ein PC startet nie von selbst neu. Änderungen an der Arbeitsumgebung der Schüler erscheinen beim nächsten normalen Start, wenn der Schülerordner zurückgesetzt wird.

Die zuletzt gespeicherte Änderung rückgängig machen. Wenn die zuletzt gespeicherte Änderung (Einstellungen, Software oder Arbeitsumgebung der Schüler) Probleme macht, kehren Sie zur davor gespeicherten Konfiguration zurück: Drücken Sie in Maintenance → Review Git changes die Taste u (Undo the last saved change), oder führen Sie nixorium git undo plan als admin aus. Die Zusammenfassung zeigt Beschreibung, Datum und Dateien dieser Änderung. Bestätigen Sie sie mit der Eingabetaste (y in einem Terminal), wird eine neue Änderung gespeichert, „Undo: …“, und die Dateien kehren zum vorherigen Stand zurück; die rückgängig gemachte Änderung bleibt im Verlauf, und nichts wird gepusht. Noch ändert sich kein Computer: Führen Sie Apply to controller und dann Update computers aus, wie bei jeder Änderung. Speichern oder verwerfen Sie andere ungespeicherte Änderungen vorher. Nur die letzte Änderung lässt sich rückgängig machen, einmal, und nur eine gewöhnliche gespeicherte Änderung: Der Vorgang wird mit Angabe des nächsten Schritts abgelehnt, wenn diese Änderung die erste gespeicherte Version, ein Merge oder bereits ein Rückgängigmachen ist, wenn sie Nixorium oder die Paketbasis aktualisiert hat (siehe die Wiederherstellung nach Updates), wenn sie Schlüssel eingetragen hat, wenn sie zu einem Wechsel des Labornetzes gehört oder wenn ihre Dateien nicht sicher auf den vorherigen Stand zurückkehren können (Details).

Alle technischen Details: Architektur → Systemupdates.

9. Aktualisieren

Zwei getrennte Updates, beide unter Maintenance:

  • Update Nixorium ändert das Framework: Menüs, Module und das Verwaltungsprogramm. Es listet die veröffentlichten Versionen auf, standardmäßig die stabilen, und blendet Versionen aus, die älter als die konfigurierte sind: Das Menü bietet nie ein Downgrade an. Es ändert nur flake.nix und flake.lock.
  • Update system and packages hebt NixOS und alle Pakete auf eine neuere Revision desselben Kanals. Der Wechsel zu einem anderen NixOS-Release ist eine eigene, ausdrückliche Wahl (m), bei der Sie bestätigen, dass die Kompatibilität nicht geprüft ist.

Beide bauen den Kandidaten tatsächlich und zeigen die Änderung; die Eingabetaste speichert sie, dann wird der Controller neu gebaut und geprüft. Nach Update Nixorium öffnet sich die Oberfläche nach einigen Sekunden von selbst in der neuen Version (Eingabetaste für sofort, Esc, um bei der laufenden zu bleiben). Die PCs behalten ihr System, bis Sie sie aktualisieren: Aktualisieren Sie einen PC, prüfen Sie ihn, dann die anderen. Bevor Sie weitere PCs installieren, bereiten Sie die Netzwerkinstallation neu vor. Meldet Update computers dann PIN-OUTDATED, öffnen Sie Maintenance → Update Nixorium, wählen Sie die konfigurierte Version, markiert mit „Current · select to repair“, und bestätigen Sie.

Systemversionen und das Bootmenü. Jedes Anwenden auf dem Controller und jedes PC-Update fügt auf diesem Rechner eine neue Systemversion hinzu, eine Generation; die alten bleiben erhalten, und das Bootmenü (GRUB) listet bis zu zehn auf. Startet ein PC oder der Controller nach einem Update nicht mehr oder verliert er das Netzwerk, starten Sie ihn neu und wählen Sie im Bootmenü die vorherige Version, PC für PC; korrigieren Sie dann die Konfiguration, bevor Sie sie erneut anwenden. Ein PC ohne Netzwerk lässt sich nicht vom Controller aus reparieren. Das Zurückgehen ändert das System, nicht die Daten, etwa eine bereits migrierte Datenbank. Alte Versionen belegen Speicherplatz: Das Menü warnt, wenn die Festplatte des Controllers knapp wird, und Maintenance → Advanced → Free disk space behält die zehn neuesten, die laufende und die, mit der der PC gestartet ist; zur Bestätigung geben Sie CLEAN ein.

10. Wenn etwas schiefgeht

Wenn etwas einen Vorgang blockiert, sagt das Menü in einem einfachen Satz, was angehalten wurde, warum und was als Nächstes zu tun ist. Drücken Sie auf diesem Hinweis die Eingabetaste, um den Bildschirm zu öffnen, der das Problem löst; Esc schließt ihn, und d zeigt die technische Meldung. Die Übersicht listet alles Unterbrochene mit denselben Worten auf, und jede Ablehnung nennt einen Code. Löschen Sie nicht als Erstes Dateien, Schlüssel oder Adressen.

Symptom Was tun
Ein PC startet nicht über das Netzwerk Prüfen Sie, ob die Netzwerkinstallation aktiv ist, der Netzwerkstart vor der Festplatte steht und der PC im Labornetz ist. Anleitung
Das Installationsprogramm lädt, schlägt aber fehl Beenden Sie die Netzwerkinstallation, bereiten Sie sie neu vor und starten Sie sie dann. Anleitung
Ein PC ist installiert, aber nicht sichtbar Prüfen Sie Strom, Kabel und Laboradresse; bei zwei kabelgebundenen Karten ist eine Ausnahme für die Schnittstelle nötig. Anleitung
Ein PC erscheint als Off or not reachable Er ist aus, oder das Netzwerk erreicht ihn nicht: Computer inventory zeigt, was zutrifft. Anleitung
Ein Update ist offen geblieben (DEPLOY-PENDING) Öffnen Sie Review the interrupted update (Eingabetaste auf dem Hinweis oder über die Übersicht). Es zeigt für jeden PC, ob er fertig ist, noch aktualisiert wird oder nicht antwortet: Drücken Sie c, um ohne die nicht antwortenden PCs fortzufahren, dann die Eingabetaste, um das Update als geprüft zu markieren. Auf den PCs ändert sich nichts; aktualisieren Sie danach erneut. Die Wartung wartet, und die Klassenbefehle (Internet, Herunterfahren, Neustart, der Zeitplan) funktionieren weiter: Sie lassen nur die PCs unberührt, die das Update nennt. Update Nixorium und Apply to controller funktionieren weiter, und falls eine ältere Version die Aktivierung des Controllers weiterhin verweigert, siehe den letzten Ausweg. Anleitung
Apply to controller ist fehlgeschlagen Lesen Sie den gemeldeten Fehler, beheben Sie ihn und lassen Sie sich eine neue Zusammenfassung zeigen. Anleitung
Ein PC startet nach einem Update nicht mehr Wählen Sie im Bootmenü die vorherige Version und korrigieren Sie dann die Konfiguration. Anleitung
Sicherung älter als 30 Tage (BACKUP-DUE) Legen Sie mit Maintenance → Back up lab eine neue an. Anleitung
Ein Schüler hat eine Datei verloren Öffnen Sie als Lehrkraft an diesem PC Snapshots in der Dateiverwaltung. Anleitung
Der Controller ist defekt oder wird ersetzt Installieren Sie einen neuen mit derselben Nummer und demselben Netz, dann Maintenance → Restore lab; die PCs müssen nicht neu installiert werden. Anleitung
Ein Speichern oder Zurücksetzen der Vorlage wurde unterbrochen Öffnen Sie den offenen Eintrag in der Übersicht, Finish or undo the reset, und lesen Sie, was gefunden wurde. Ändert sich keine Datei, bestätigt die Eingabetaste; nur bei gemischten alten und neuen Dateien geben Sie RESTORE ein. Löschen Sie nichts. Anleitung
Eine USB- oder Netzwerkinstallation wurde unterbrochen Öffnen Sie Resume or close the USB installation oder Recover the controller network über die Übersicht oder die Bildschirme unter Installation und folgen Sie dem, was angeboten wird. Während einer unvollendeten USB-Installation bleiben Update Nixorium und Apply to controller verfügbar, außer während die Festplatte des PCs beschrieben wird; eine noch offene Netzwerkinstallation blockiert sie. Anleitung
Die Lehrkraft sieht einen Code wie OP-BUSY Warten Sie, bis der laufende Vorgang endet, oder folgen Sie der Zeile zu diesem Code. Anleitung

11. Assistant

Assistant ist ein optionaler, kostenpflichtiger Dienst im Administratormenü. Beschreiben Sie eine Änderung in eigenen Worten; Sie prüfen den Vorschlag vor dem Speichern und wenden dann wie gewohnt an und aktualisieren. Bei einem Programm, das als Download verteilt wird (AppImage, deb oder Tarball), lädt Assistant die Datei einmal auf den Controller und legt deren Hash selbst fest, sodass Sie keinen Hash berechnen müssen. Hat sich seit der eigenen Prüfung durch Assistant nichts geändert, verwendet die Zusammenfassung sie wieder und gibt an, wie lange die Prüfung zurückliegt, statt den Computerraum erneut auszuwerten. Bricht der Dienst eine Antwort ab, sagt Assistant das und bittet Sie, die Nachricht erneut zu senden. Ein fortgesetzter, schreibgeschützter Chat lässt sich mit den Pfeiltasten scrollen; mit Tab wählen Sie zwischen dem Fortsetzen in einem neuen Chat und dem Zurückgehen. Nixorium funktioniert vollständig ohne Assistant (Tarife und kostenlose Testphase).

12. Grenzen und Vorsichtsmaßnahmen

  • Die Installation löscht die gesamte bestätigte Festplatte, einschließlich Windows, wenn es auf dieser Festplatte liegt.
  • Snapshots liegen auf derselben Festplatte und rotieren nach fünf Starts: Sie sind keine Sicherungen.
  • Die Konten sind lokal und fest vorgegeben: ein Administrator, eine Lehrkraft und ein gemeinsames Schülerkonto, mit demselben Passwort auf jedem PC. Es gibt keine persönlichen Anmeldungen für einzelne Schüler und keinen Verzeichnisdienst der Schule.
  • Es gibt keine unbeaufsichtigte Installation: Jemand bestätigt jeden PC an dessen Bildschirm oder dessen Fingerabdruck per SSH.
  • Der Netzwerkstart funktioniert womöglich nicht über WLAN oder nicht mit jeder Firmware und jedem Schulnetz; die Alternative ist USB over SSH.
  • „Monitoring stopped on this PC“ ist eine Hilfe für den Unterricht, keine Sicherheitsgrenze. Ein Schüler kann die Klassenansicht nicht über das Terminal seiner Sitzung beenden: Sie startet innerhalb von Sekunden neu, und die Kachel des PCs zeigt das in der Zwischenzeit an. Maskiert ein Schüler ihre Unit, kommt die Klassenansicht erst beim nächsten Neustart zurück, wenn der Schülerordner zurückgesetzt wird.
  • Releases werden auf virtuellen Maschinen geprüft; beginnen Sie mit einem eigenen Controller und einem eigenen PC.

Vollständige Anleitungen

Auf Englisch, in der Nixorium-Revision, die diese Seite beschreibt: