Guide du technicien
Comment fonctionne une salle Nixorium et comment la gérer, du premier contrôleur aux modifications courantes, aux mises à jour et à la récupération. Pour le technicien de l’établissement qui connaît les PC et les réseaux, mais pas Nix.
1. Le fonctionnement, en bref
Une salle Nixorium comporte trois éléments.
- Le contrôleur. Un PC de la salle, un poste libre ou celui de l’enseignant. Il conserve la configuration de la salle, construit le système de chaque PC et le distribue sur le réseau local depuis un cache de paquets signé. Il assure l’installation par le réseau et la vue de classe, et c’est la seule machine qui a besoin d’Internet pour l’installation et les mises à jour.
- La configuration de la salle. Un dépôt Git privé dans le dossier
personnel de l’administrateur, sur le contrôleur :
~/nixorium-deployment. Elle décrit toute la salle : le nombre de PC, le réseau, les comptes, les logiciels et le bureau des élèves. Le menu la rédige pour vous, après vérification. - Les PC des élèves. Chacun est installé une fois depuis le contrôleur, puis démarre sur son propre disque et exécute ses applications localement : si le contrôleur est éteint, le cours continue ; seules les mises à jour et la vue de classe attendent.
Où se trouve quoi :
- Sur le contrôleur : la configuration de la salle et son historique, les clés privées, les empreintes des mots de passe, le cache signé.
- Sur chaque PC, contrôleur compris : son système installé, les versions précédentes du système proposées dans le menu de démarrage, le dossier élève et ses cinq instantanés.
- Hors du contrôleur, si vous en faites une : la sauvegarde (un fichier chiffré sur un support USB, ou un dépôt Git privé) et la phrase secrète qui l’ouvre.
Tout se gère depuis un menu en mode texte, Nixorium : connectez-vous au
contrôleur en tant que admin et ouvrez-le depuis le dock, ou tapez
nixorium dans un terminal. Ses rubriques sont Computers,
Installation, Software et Maintenance, plus Assistant, en
option. Chaque action qui modifie quelque chose affiche d’abord un
récapitulatif et attend votre confirmation.
Pourquoi Git ? Chaque enregistrement dans le menu devient un commit, et chaque système construit par le contrôleur porte la révision dont il provient. Un PC est à jour lorsqu’il exécute la dernière révision enregistrée : le menu sait ainsi où en est chaque PC. Git conserve aussi l’historique de chaque modification et peut être sauvegardé dans un dépôt privé.
Détails techniques complets : Architecture → Modèle du système.
2. Avant de commencer
Il vous faut :
- deux PC 64 bits avec UEFI que vous pouvez effacer : le contrôleur et un premier PC d’élève ;
- une clé USB avec l’ISO officielle de NixOS 26.05, Minimal (console texte) ou Graphical (GNOME) ;
- Internet sur le contrôleur, qui doit aussi pouvoir joindre des serveurs de temps sur Internet, et un réseau où les PC se voient entre eux ;
- pour l’installation par le réseau, le démarrage réseau UEFI sur les PC des élèves.
Ce qui est effacé. L’installation efface tout le disque que vous confirmez, sur le contrôleur et sur chaque PC. Elle ne redimensionne pas Windows et ne conserve aucune partition sur ce disque. Windows peut rester sur un second disque : le menu de démarrage le trouve (voir le double démarrage). Copiez d’abord ailleurs ce dont vous avez besoin.
Qui doit être présent. La personne qui détient le mot de passe administrateur, et quelqu’un devant chaque PC pendant son installation : l’installateur demande, sur l’écran même du PC, de quel poste il s’agit et quel disque effacer.
Trois points à régler avec le responsable du réseau de l’établissement :
- Un sous-réseau fixe pour la salle. En plus de l’adresse que leur
attribue le DHCP de l’établissement, le contrôleur et les PC portent une
adresse fixe de salle dans un sous-réseau IPv4 privé de votre choix, par
exemple
10.0.0.0/24. Il ne doit pas contenir l’adresse que le DHCP de l’établissement attribue au contrôleur : les réglages refusent tout chevauchement. Un /24 offre 254 adresses utilisables. - L’interface réseau. La configuration initiale propose la carte du contrôleur ; les PC des élèves ne demandent en général aucun réglage (voir la section 4).
- L’autorisation du démarrage réseau. L’installation par le réseau lance sur le contrôleur un service ProxyDHCP à côté du serveur DHCP de l’établissement. Celui-ci continue d’attribuer toutes les adresses ; le contrôleur indique seulement aux PC qui demandent à démarrer par le réseau où se trouve l’installateur. Une isolation par VLAN, une politique DHCP ou un autre service sur UDP 67/69 ou TCP 8080 peuvent l’en empêcher. Le démarrage réseau demande le câble ; l’installation par USB fonctionne sans lui.
3. Installer le contrôleur
Démarrez le contrôleur sur l’ISO NixOS en mode UEFI, avec Internet. L’ISO Graphical est utile quand le réseau de l’établissement exige une authentification dans le navigateur : identifiez-vous dans Firefox, puis ouvrez Terminal (ignorez « Install NixOS »). Exécutez :
curl -fsSL https://nixorium.org/install.sh | bash
Le site compte les téléchargements quotidiens de ce script, uniquement la date et le nombre (confidentialité). Le script propose la dernière version stable (par défaut), la dernière préversion quand elle est plus récente, et master, puis demande :
- la disposition du clavier, dans une courte liste, appliquée immédiatement pour que vous saisissiez les mots de passe avec elle, puis le fuseau horaire ;
- les noms des comptes enseignant et élève (l’administrateur est toujours
admin) ; - trois mots de passe, administrateur, enseignant et élève, chacun saisi deux fois ;
- le profil logiciel initial, par exemple Essential ou Programming ;
- le disque.
Rien ne change avant le récapitulatif du disque, où vous tapez ERASE ; une
réponse mal saisie est redemandée, une réponse vide annule. Le script installe
le contrôleur et enregistre la configuration de la salle dans
~/nixorium-deployment, déjà enregistrée dans Git. Retirez la clé USB, tapez
reboot, connectez-vous en tant que admin et ouvrez Nixorium. La
première fois, il affiche l’avertissement d’utilisation et vous interroge sur
les statistiques d’adoption facultatives, désactivées sauf si vous les
acceptez.
Mode contrôleur seul. Un nouveau contrôleur démarre en mode contrôleur seul : aucun PC d’élève n’est configuré, donc le réseau de la salle, le cache et les services de contrôle à distance sont arrêtés, et le contrôleur n’utilise que son adresse DHCP de l’établissement. La salle se met en place la première fois que vous ouvrez Installation.
4. Le réseau de la salle
Deux adresses sur une carte. Chaque machine continue d’utiliser le DHCP de
l’établissement pour son adresse, sa route par défaut et son DNS : les élèves
naviguent comme d’habitude. Sur la même carte, chaque machine porte aussi une
adresse fixe de salle : la base du sous-réseau plus son numéro. Avec
10.0.0.0/24, pc01 a l’adresse 10.0.0.1, pc02 l’adresse 10.0.0.2, et le
contrôleur, pc99 par défaut, l’adresse 10.0.0.99. La gestion n’utilise que
ces adresses fixes : le contrôleur envoie les mises à jour et ouvre la vue de
classe par elles, et chaque PC d’élève n’accepte SSH que depuis l’adresse de
salle du contrôleur. Sur un PC d’élève, l’adresse de salle reste en place même
quand aucun serveur DHCP ne répond.
Les réglages de la salle. La première fois que vous ouvrez Installation →
Network boot (PXE) ou Installation → USB over SSH, un formulaire demande
le réseau fixe de la salle et la longueur de son préfixe, le nombre de PC
d’élèves (numérotés à partir de pc01), le numéro d’hôte du contrôleur
(supérieur à celui de tous les PC, 99 par défaut), l’adresse DHCP actuelle du
contrôleur et les interfaces. Le menu les enregistre, crée les clés et applique
la configuration au contrôleur, qui devient un contrôleur de salle avec son
adresse fixe. Une fois des PC d’élèves configurés, Change settings ne
modifie plus le sous-réseau, le préfixe ni le numéro du contrôleur (code
NETWORK-LOCKED) : les PC installés garderaient leurs anciennes adresses et
perdraient le contact. Le numéro du contrôleur reste fixe, choisissez-le donc
une fois pour toutes ; le sous-réseau et le préfixe ne changent qu’avec la
procédure guidée décrite plus bas.
Noms des interfaces réseau. Trois réglages, dans Maintenance → Change settings → Network :
- Controller network interface : le contrôleur utilise toujours ce nom. La configuration initiale propose la carte qui porte sa route par défaut ; ne le changez que si la carte du contrôleur change.
- Client computers’ network interface : laissez-le vide, comme par défaut. Chaque PC d’élève place alors l’adresse de salle sur sa carte Ethernet filaire, quel que soit son nom : des PC de modèles différents n’ont besoin de rien. Les cartes sans fil, les ponts et les périphériques virtuels ne sont jamais retenus. N’indiquez un nom que si tous les PC ont le même nom de carte.
- Shared fallback interface : utilisée par le contrôleur quand son propre nom est vide. Les PC des élèves l’ignorent, sauf si un nom client est défini.
Un PC doté de plusieurs cartes filaires demande une exception propre à ce poste
(hostIfaceNames dans la configuration de la salle) ; sinon, la première carte
qui s’active reçoit l’adresse de salle, et cela peut changer d’un démarrage à
l’autre. Changer une interface peut déconnecter les PC concernés au moment où le
changement est appliqué : le récapitulatif vous prévient, alors vérifiez les
câbles et gardez la console locale à portée de main.
Wi-Fi. Le réseau de la salle est filaire : un PC ne prend jamais son
adresse de salle sur une carte Wi-Fi, et le démarrage réseau comme Switch on
demandent aussi le câble. Le compte élève ne
peut modifier ni les connexions, ni les radios, ni le DNS ; l’enseignant et
l’administrateur le peuvent, sauf la connexion de la salle (nixorium-lab) :
Nixorium la rétablit au démarrage et à chaque mise à jour du contrôleur, donc
d’autres serveurs DNS se règlent dans la configuration de la salle (Assistant
peut préparer la modification).
Déplacer la salle vers un autre réseau. Une fois des PC configurés,
Maintenance → Change network addressing (ou nixorium network migrate)
fait passer le contrôleur et chaque PC sur un nouveau sous-réseau, par exemple
de 10.0.0.0/24 à 10.1.0.0/24 ; chaque PC garde son numéro. Allumez d’abord
les PC, enregistrez les modifications en attente et arrêtez l’installation par
le réseau. Vous saisissez le nouveau réseau sous forme d’adresse et de
préfixe ; le récapitulatif liste l’adresse du contrôleur et de chaque PC avant
et après, et vérifie que chaque PC répond (un PC éteint bloque la suite jusqu’à
ce que vous l’allumiez ou que vous continuiez sans lui). L’enregistrement ne
modifie aucun PC. Viennent ensuite les deux étapes habituelles, Apply to
controller et Update computers : tant que vous n’avez pas terminé, le
contrôleur répond sur les deux réseaux et chaque PC garde son ancienne adresse
à côté de la nouvelle, si bien que rien ne perd le contact. La vue d’ensemble
affiche le changement en cours (NETWORK-CHANGING) avec l’étape suivante.
Finish est proposé une fois que chaque PC exécute la configuration
enregistrée et répond à sa nouvelle adresse, et Undo fonctionne à tout
moment avant cela. Préparez ensuite à nouveau l’installation par le réseau :
les fichiers préparés contiennent l’adresse du contrôleur
(détails).
L’heure. Le contrôleur garde l’horloge de la salle à l’heure grâce à des serveurs de temps sur Internet ; il doit donc pouvoir les joindre (UDP 123 sortant). Il ne donne l’heure qu’au réseau de la salle, en ouvrant UDP 123 sur la carte de la salle et nulle part ailleurs. Chaque PC interroge le contrôleur et aucun serveur de temps sur Internet : un PC dont la pile d’horloge est vide démarre à la bonne heure bien qu’il n’ait pas d’accès Internet propre, et les certificats, les dates des fichiers et les journaux restent justes. Si le contrôleur ne peut pas joindre Internet, il continue de fournir sa propre heure, à partir de cinq minutes après son démarrage. Il n’y a rien à configurer : le changement arrive sur chaque PC à sa prochaine mise à jour et sur le contrôleur quand vous l’appliquez, et une installation en mode contrôleur seul conserve ses réglages d’heure précédents (détails).
Ce que l’installation par le réseau modifie, et ce qu’elle laisse. Sa
préparation construit l’installateur et le système de chaque PC et enregistre
l’adresse DHCP actuelle du contrôleur ; le réseau ne change pas encore. Quand
vous la lancez (Entrée sur son récapitulatif), le contrôleur enregistre la session, retire
son adresse fixe de salle de la carte et sert les fichiers de démarrage et le
cache signé sur son adresse DHCP. Un PC qui démarre par le réseau reçoit son
adresse du DHCP de l’établissement, charge l’installateur depuis le contrôleur
et télécharge son système depuis le cache, vérifié avec la clé de signature du
cache. L’arrêt de l’installation par le réseau remet l’adresse fixe en place ;
après une coupure de courant, le contrôleur fait de même au démarrage. Tant
qu’elle est active, les autres opérations, comme les mises à jour et les
commandes de la vue de classe, sont refusées avec le code PXE-ACTIVE :
arrêtez-la donc une fois la salle installée. Si le DHCP de l’établissement
attribue une nouvelle adresse au contrôleur, il suffit de refaire la
préparation
(détails).
Rien de temporaire ne reste sur le PC installé : il démarre avec son adresse
DHCP plus son adresse fixe de salle. L’installation par USB ne touche jamais à
l’adresse du contrôleur.
Détails techniques complets : Architecture → Installation réseau.
5. Le premier PC d’élève
Installez un seul PC et vérifiez-le avant les autres. Chaque écran de Nixorium affiche son étape suivante comme l’action Entrée en surbrillance au-dessus de la barre des touches, en rouge quand elle efface ou remplace des données ; la barre liste les autres touches.
Démarrage réseau. Installation → Network boot (PXE) affiche une seule
étape à la fois : préparer les fichiers, lancer, installer, rétablir le réseau
si nécessaire. Démarrez le PC par le réseau, avec le démarrage réseau UEFI
placé avant le disque. L’installateur s’ouvre tout seul sur son écran, affiche
le matériel et les disques et demande de quel poste configuré il s’agit. Il
refuse une identité dont l’adresse de salle répond déjà, mais une absence de
réponse ne vaut pas réservation : tenez votre propre liste des PC. Il ne
propose que les disques ayant la place pour le système plus 2 Gio. Au
récapitulatif de l’identité et du disque, tapez ERASE. Il installe depuis le
cache du contrôleur, vérifie le résultat, puis demande « Reboot now? [y/N] » : répondez y, ou appuyez sur Entrée pour rester dans l’installateur.
Placez le démarrage réseau après le disque dans l’ordre de démarrage du PC,
pour qu’il démarre sur son disque. Si l’installation par le réseau a été
interrompue, cet écran devient Recover the controller network : il explique
simplement ce qu’il a trouvé, et Entrée rétablit le réseau du contrôleur sans
toucher aucun PC d’élève.
L’installateur du PC, lancé par le démarrage réseau ou par USB, affiche trois
étapes numérotées et se termine par un bloc « Next » qui contient l’empreinte
de la clé SSH de l’ordinateur : notez-la, car la revue de clé que le contrôleur
demande après une réinstallation peut être comparée avec elle. La liste des
fichiers copiés, les avertissements du chargeur de démarrage et les traces des
outils de disque vont dans /tmp/nixorium-install.log ; si l’installation
échoue, l’écran affiche les dernières lignes et le chemin du journal.
USB over SSH. Utilisez-le quand le PC ne peut pas démarrer par le réseau.
Démarrez le PC sur l’ISO NixOS (Minimal avec 4 Go de RAM ou moins), branchez
son câble (le Wi-Fi avec nmtui ne sert qu’à l’installation : le PC installé a
besoin de son câble avant le redémarrage) et, sur sa console,
exécutez :
passwd
systemctl is-active sshd
ip -4 -br address
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
Gardez cet écran visible. Sur le contrôleur, choisissez Installation → USB
over SSH, sélectionnez le poste et saisissez seulement l’adresse IPv4 de la
session live. Le contrôleur lit la clé SSH du PC sans envoyer aucun mot de
passe et affiche son empreinte SHA256:. Comparez-la avec celle qui s’affiche
sur l’écran du PC et tapez MATCH ; ce n’est qu’ensuite qu’il demande le mot
de passe temporaire, qui ne part donc que vers le PC que vous avez devant vous.
Choisissez le disque et confirmez son récapitulatif. Laissez la clé USB en place et confirmez le redémarrage : le PC redémarre sur son nouveau disque, et vous retirez la clé après ce redémarrage ; le contrôleur
vérifie ensuite le PC installé à son adresse de salle. Si l’installation
s’arrête en cours de route, l’écran s’ouvre sur Resume or close the USB
installation : il indique si le PC répond encore depuis la clé USB et si son
disque a été touché, et ne propose que les sorties sûres, comme Resume the
installation ou Cancel safely. Pour clore le suivi de l’installation une
fois le disque écrit, vous devez taper CLOSE ; vous pouvez aussi le clore
ainsi quand le PC ne revient pas après le redémarrage ou que le résultat ne
peut pas être prouvé. Le contrôleur est alors libéré ; vérifiez ce PC, ou
réinstallez-le.
À vérifier avant de continuer :
- le PC démarre sur son disque jusqu’au bureau des élèves, et les applications, le clavier, l’affichage et les périphériques de vos cours fonctionnent ;
- connecté au contrôleur en tant qu’enseignant, vous voyez l’écran du PC dans Classroom view ;
- Computers → Computer inventory indique que le PC est à jour ;
- un fichier d’essai enregistré par l’élève a disparu après un redémarrage et se retrouve dans les instantanés (voir la section 7) ;
- une mise à jour depuis Computers → Update computers aboutit.
6. Le reste de la salle, et la première sauvegarde
L’installation par le réseau étant active, démarrez les autres PC par le
réseau l’un après l’autre, en choisissant chaque identité et en tapant ERASE
sur chacun. Arrêtez ensuite l’installation par le réseau, ce qui rend au
contrôleur son adresse fixe. Pour ajouter des PC plus tard, augmentez le nombre
d’ordinateurs dans Maintenance → Change settings → Computers, appliquez,
puis préparez à nouveau l’installation par le réseau.
Faites ensuite une sauvegarde avec Maintenance → Back up lab : elle permet à un nouveau contrôleur de reprendre la salle sans réinstaller les PC. Deux types :
- Fichier chiffré : toute la configuration de la salle, son historique, les clés privées et les empreintes des mots de passe dans un seul fichier chiffré avec votre phrase secrète. Back up lab propose un support USB connecté pour le fichier, ou le dossier personnel s’il n’y en a aucun.
- Dépôt Git privé : un dépôt privé GitHub ou GitLab joint par SSH. Les clés et les empreintes des mots de passe y transitent chiffrées dans un fichier de récupération ; la configuration reste lisible par les membres du dépôt. Après la première sauvegarde vérifiée, chaque modification enregistrée est poussée tant que Nixorium est ouvert.
Choisissez une phrase secrète d’au moins 12 caractères et conservez-la loin du
contrôleur : Nixorium ne l’enregistre jamais. La vue d’ensemble vous rappelle
quand une sauvegarde s’impose (code BACKUP-DUE) : pour un fichier, quand la
configuration, les clés ou les mots de passe ont changé depuis la dernière, ou
au bout de 30 jours ; pour Git, quand les clés, les mots de passe ou les
ordinateurs de confiance ont changé, par exemple après l’installation d’un PC.
Un rappel ne bloque jamais rien.
Remplacer un contrôleur. Installez le nouveau contrôleur comme d’habitude,
connectez-vous en admin et ouvrez Nixorium. Choisissez Maintenance → Restore lab.
Pour un fichier, Restore lab propose le nixorium-backup-*.age le plus récent
d’un support connecté et un dossier où restaurer ; saisissez la phrase secrète
et confirmez. Choisissez ensuite Use this lab on this controller : la salle
créée par l’installateur est mise de côté, la salle restaurée prend sa place et
ses clés sont installées. Rien n’est supprimé ni activé tant que Review
controller ne l’applique pas après la revue habituelle. Les PC n’ont pas à
être réinstallés, mais ceux réinstallés après la sauvegarde affichent « SSH key
changed » : comparez l’empreinte affichée sur leur écran avant de leur faire
confiance.
Détails techniques complets : Architecture → Limites du réseau et de la confiance.
7. Au quotidien
L’enseignant se connecte au contrôleur et ouvre Classroom view depuis le dock : tous les écrans des élèves à la fois, un écran dans sa propre fenêtre avec Take control, ainsi que Lock (« Eyes on the teacher »), Share screen, Share files, Block/Allow Internet, Restart et Shut down. Internet revient au redémarrage d’un PC ; un PC éteint apparaît comme Off or not reachable. Aucune de ces commandes ne modifie la configuration de la salle. Elles continuent de fonctionner pendant que l’administrateur met les ordinateurs à jour : seul un PC en cours de mise à jour, ou dont la dernière mise à jour a été interrompue, est laissé tranquille, et le récapitulatif le dit.
Save screenshot, Collect from students’ desktops et Switch on complètent
ces commandes. Save screenshot, dans la fenêtre d’un poste, enregistre une
image de son écran dans Nixorium/Screenshots, dans le dossier personnel de la
personne qui utilise la vue de classe ; cela ne fonctionne que tant que l’écran
est en direct : un poste éteint, derrière son propre écran de verrouillage ou
sans personne de connecté n’a rien à enregistrer. Collect from students’
desktops, dans le menu Share files à côté de Send a folder… et
Send a file…, copie les fichiers présents sur les bureaux des postes
sélectionnés dans Nixorium/Collected, dans ce même dossier personnel, un
dossier par poste, après un récapitulatif : les fichiers cachés et les liens
sont exclus, rien ne change sur les postes des élèves, et un poste qui dépasse
2000 éléments ou 500 Mo est signalé et rien n’en est conservé. Mettez d’abord
les postes à jour : un poste non mis à jour est signalé comme ne permettant pas
encore la collecte. Switch on, sous Power dans la vue de classe et dans
Computers → Power controls, envoie un paquet Wake-on-LAN aux postes
sélectionnés qui sont éteints. Un paquet envoyé ne prouve pas que le poste
démarre : son firmware (BIOS/UEFI) doit autoriser le réveil par le réseau, le
poste doit avoir été redémarré une fois après la mise à jour client qui active
Wake-on-LAN, et il doit rester branché. Personne ne saisit d’adresse : le
contrôleur apprend seul l’adresse de la carte réseau de chaque poste quand
celui-ci est allumé et que la vue de classe est ouverte ou que Computer
inventory s’exécute, et un poste dont il ne connaît pas encore l’adresse est
ignoré
(détails).
Message → Send a message… affiche un texte de 300 caractères au maximum sur les écrans des postes sélectionnés, au premier plan, y compris par-dessus un verrouillage ou un écran partagé. Il reste affiché jusqu’à ce que l’élève le ferme (Close apparaît au bout de 10 secondes), pendant 30 secondes ou 2 minutes, ou jusqu’à ce que vous déverrouilliez le poste ; Remove message le retire. Les élèves gardent le clavier et la souris sauf si le poste est verrouillé, et la fermeture de session fait disparaître le message. Mettez d’abord les postes à jour et demandez aux élèves de se reconnecter : un poste non mis à jour est signalé comme ne pouvant pas encore afficher de messages (détails).
Pour préparer la salle à une évaluation, utilisez Internet → Block Internet, Lock et Message l’un après l’autre, puis Share files → Collect from students’ desktops.
Ce que voient les élèves. Tant que la vue de classe est ouverte sur le contrôleur, chaque PC d’élève affiche l’icône de partage d’écran de GNOME dans la barre supérieure, que vous regardiez ce PC ou non ; elle disparaît en moins d’une minute après la fermeture de la vue ou la réduction de sa fenêtre, et la capture s’arrête alors. Quand une fenêtre est en plein écran (une vidéo, un jeu), GNOME masque la barre supérieure et le PC affiche à la place la petite mention « Classroom view open » dans un coin. Pendant que vous pilotez un PC avec Take control, son écran affiche « Teacher in control » jusqu’à la fin de la prise en main. Avec Save screenshot ou Collect from students’ desktops, le PC affiche un court avis qui s’efface au bout de quelques secondes. Ces mentions viennent de l’extension GNOME Shell de la vue de classe : après une mise à jour, elles apparaissent à la connexion suivante de l’élève. Pour désactiver (ou réactiver) toute la vue de classe, utilisez Maintenance → Change settings → Classroom view ; à la mise à jour suivante, son logiciel est retiré des PC d’élèves.
Schedule allume et éteint automatiquement les postes des élèves. Ouvrez
Power → Schedule… dans la vue de classe (Save et Clear), ou
utilisez nixorium schedule set --on 07:50 --off 18:00 dans un terminal, en
tant qu’enseignant ou administrateur. La programmation comporte au plus une
heure d’allumage et une heure d’extinction, pour les jours de la semaine que
vous choisissez (du lundi au vendredi, sauf indication contraire avec
--days), dans le fuseau horaire du contrôleur. L’allumage est le Switch
on ordinaire : les conditions ci-dessus s’appliquent, et un poste dont
l’adresse réseau n’est pas connue est ignoré. L’extinction n’interrompt jamais
personne : un poste en cours d’utilisation, ou dont la session ne peut pas être
lue, reste allumé. Quand une installation par le réseau ou par USB
l’empêche de démarrer, elle réessaie chaque minute pendant dix minutes, puis
abandonne pour la journée. Une mise à jour des ordinateurs ne la retient pas :
l’extinction laisse seulement allumés les PC en cours de mise à jour et en
donne la raison. La programmation n’existe que sur le contrôleur,
hors de la configuration et de la sauvegarde : redéfinissez-la après un
remplacement du contrôleur
(détails).
À chaque démarrage d’un PC, avant l’écran de connexion, la remise à zéro du dossier élève s’exécute. Le dossier élève précédent devient l’un des cinq instantanés tournants, en lecture seule et sans les données d’exécution comme les paquets npm globaux, les images Docker et les identifiants enregistrés. Un dossier propre est ensuite recréé à partir de l’espace de travail préparé pour les élèves, et la session élève s’ouvre automatiquement. L’enseignant trouve les instantanés sous Snapshots dans la barre latérale de Fichiers, une fois connecté sur ce PC. Les instantanés sont sur le même disque, ce ne sont donc pas des sauvegardes : un disque en panne les emporte, et une session disparaît après cinq nouveaux démarrages. Le travail à conserver va sur une clé USB ou sur le stockage en ligne de l’établissement. Si une remise à zéro ne peut pas aller au bout, le PC bloque la connexion : ne la relancez pas, faites d’abord lire le journal par l’administrateur (détails).
Comptes.
admin, l’administrateur : détient la configuration de la salle sur le contrôleur, avec sudo et SSH.- L’enseignant : un dossier personnel conservé, la vue de classe et ses commandes, et l’accès en lecture aux instantanés.
- L’élève : un seul compte partagé sur chaque PC, connecté automatiquement, sans droits d’administrateur et avec un dossier remis à zéro à chaque démarrage. Son mot de passe est le même partout.
Les comptes font partie de la configuration : passwd ne les modifie donc pas.
Utilisez Maintenance → Change settings → Accounts, avec Change account
names et Change account passwords. Un nouveau mot de passe prend effet
sur le contrôleur quand vous appliquez la configuration, et sur chaque PC quand
vous le mettez à jour. Un compte renommé démarre avec un dossier personnel neuf
et vide.
8. Modifier quelque chose
Toute modification suit le même chemin : modifier dans le menu, vérifier, enregistrer (un commit dans la configuration de la salle), puis appliquer. L’enregistrement seul ne change aucun PC en fonctionnement.
- Logiciels. Dans Software, cherchez dans l’ensemble de paquets figé
par la salle, ou choisissez une suggestion ou un profil complet (
p). Choisissez la destination : partagé (le contrôleur et tous les PC, présents et futurs), le contrôleur seul, tous les PC des élèves, un groupe ou des PC choisis. Entrée sur un paquet configuré permet d’en changer la destination (c) ou de le retirer (x). - Le bureau des élèves. Dans Maintenance → Change settings → Student workspace, vous modifiez le dock, les favoris et le bureau, le navigateur par défaut et les fichiers initiaux du dossier élève. Assistant modifie sur demande les réglages et les extensions VS Code des élèves, car VS Code n’est pas toujours installé ; les extensions gérées par le profil restent la voie recommandée. Si le profil comprend l’extension Java et que les logiciels incluent un JDK, ses réglages pointent vers ce JDK. Un programme téléchargé en dehors de Nix, comme une extension du Marketplace qui apporte ses propres binaires, fonctionne aussi pour le personnel, qui conserve son dossier personnel ; les dossiers élèves perdent ces installations à la remise à zéro.
- Réglages. Dans Maintenance → Change settings, vous trouvez le réseau, les ordinateurs, les comptes, les paramètres régionaux, le navigateur et Git.
Rien n’est écrit avant que vous confirmiez le récapitulatif. La plupart des
récapitulatifs se confirment avec Entrée (dans un terminal, nixorium demande
Continue? [y/N]) ; Échap annule. On ne tape un mot qu’avant ce qui ne peut pas
être annulé : effacer un disque, réinitialiser le modèle de configuration,
abandonner des modifications non enregistrées, faire confiance à la clé d’un
nouvel ordinateur, supprimer d’anciennes versions et, dans un terminal, éteindre
ou redémarrer des PC que quelqu’un utilise. Viennent ensuite deux étapes
distinctes :
- Apply to controller. Après un enregistrement, le menu propose Apply to this controller ; on le trouve aussi dans Maintenance → Advanced. Le contrôleur construit la configuration enregistrée et bascule dessus, après un récapitulatif qui montre ce qui change. Toute modification des réglages en a besoin. Les logiciels enregistrés comme partagés ou réservés au contrôleur le font d’eux-mêmes juste après l’enregistrement.
- Update computers. Dans Computers → Update computers, ou avec
Update affected computers après l’enregistrement d’un logiciel,
sélectionnez les PC (
nchoisit ceux qui en ont besoin ; les PC dont la mise à jour en file d’attente est périmée sont déjà sélectionnés) et appuyez sur Entrée sur le récapitulatif. Le moteur de mise à jour propre à Nixorium construit les systèmes une seule fois, copie chacun sur son PC, et le PC bascule dessus dans un service qui continue de tourner même si la connexion tombe. Ensuite le menu vérifie quels PC exécutent désormais la révision validée. Le journal de la mise à jour indique quand chaque étape a commencé et combien de temps elle a duré, avec le temps total à la fin, ainsi que la progression et les messages d’activation de chaque PC.
Rien n’arrive sur un PC d’élève tant que vous ne le mettez pas à jour. Un PC éteint est placé en file d’attente (option activée par défaut dans le récapitulatif). Un PC éteint pendant la construction de la mise à jour reste tel quel et est signalé comme non mis à jour, ou mis aussi en file d’attente si vous avez choisi cette option ; il ne retient jamais les autres PC, pas plus qu’un PC qui échoue. Un PC qui perd la connexion pendant la mise à jour termine de lui-même : la mise à jour se ferme toute seule dès que chaque PC a signalé comment elle s’est terminée, et seul un PC dont le résultat est vraiment inconnu la garde ouverte pour un examen. Le contrôleur réessaie chaque minute et met à jour ensemble les PC en attente qui répondent ; tant qu’une autre opération est en cours, il attend la minute suivante. Computers → Queued updates les liste. Une entrée n’est pas appliquée si la configuration a changé entre-temps : la prochaine Update computers sélectionne ces PC pour vous, et son récapitulatif les inclut. Pendant que vous mettez des ordinateurs à jour, les commandes de classe continuent de fonctionner pour les autres PC. Après une mise à jour, le PC affiche une notification : elle demande un redémarrage quand le noyau ou systemd a changé ; sinon, elle indique que la mise à jour est en place et ne suggère un redémarrage que si quelque chose ne fonctionne pas comme prévu. Un PC ne redémarre jamais de lui-même. Les modifications de l’espace de travail des élèves apparaissent au démarrage normal suivant, lors de la remise à zéro du dossier.
Annuler la dernière modification enregistrée. Quand la dernière
modification enregistrée (réglages, logiciels ou espace de travail des élèves)
pose problème, revenez à la configuration enregistrée avant elle : dans
Maintenance → Review Git changes, appuyez sur u (Undo the last saved
change), ou exécutez nixorium git undo plan en tant que admin. Le
récapitulatif montre la description, la date et les fichiers de cette
modification. La confirmer avec Entrée (y dans un terminal) enregistre une nouvelle modification, « Undo: … »,
et remet les fichiers dans leur état précédent ; la modification annulée reste
dans l’historique et rien n’est poussé. Aucun ordinateur ne change encore :
lancez Apply to controller puis Update computers, comme pour toute
modification. Enregistrez ou abandonnez d’abord les autres modifications non
enregistrées. Seule la dernière modification peut être annulée, une seule
fois, et seulement s’il s’agit d’une modification enregistrée ordinaire :
l’annulation est refusée, avec l’étape suivante à suivre, quand cette
modification est la première version enregistrée, une fusion ou déjà une
annulation, quand elle a mis à jour Nixorium ou la base de paquets (voir la
récupération après mise à jour),
quand elle a enregistré des clés, quand elle fait partie d’un changement de
réseau de la salle, ou quand ses fichiers ne peuvent pas revenir en arrière
sans risque
(détails).
Les PC identiques partagent une configuration. Les PC qui ont les mêmes
logiciels et le même type de carte réseau partagent un seul système ; le
récapitulatif indique donc, par exemple, qu’il construit 2 configurations pour
20 PC : la construction se fait une fois, pas une fois par PC. Chaque PC garde
son nom et son adresse de la salle grâce à un petit enregistrement d’identité,
/var/lib/nixorium/identity.json, qui ne contient que son numéro. La mise à
jour ou l’installateur l’écrit avant que le PC démarre son nouveau système, et
une mise à jour n’écrase jamais un enregistrement qui désigne un autre PC. Si un
PC affiche « This computer has no Nixorium identity », ou si une mise à jour
affiche « identity record names another computer », voyez le tableau de En cas
de problème. Un module privé qui utilise le nom ou l’adresse
d’un PC exige que ce PC figure dans hostModules ou updateValidationHosts ;
sinon l’évaluation s’arrête et le dit.
Détails techniques complets : Architecture → Mises à jour du système.
9. Mettre à jour
Deux mises à jour distinctes, toutes deux dans Maintenance :
- Update Nixorium change le framework : les menus, les modules et le
programme de gestion. Il liste les versions publiées, les versions stables
par défaut, et masque celles qui sont plus anciennes que la version
configurée : le menu ne propose jamais de revenir à une version antérieure.
Il modifie
flake.nixetflake.locket, quand une version l’exige, les fichiers propres de la configuration de la salle (voir plus bas). - Update system and packages fait passer NixOS et tous les paquets à une
révision plus récente du même canal. Passer à une autre version de NixOS est
un choix distinct et explicite (
m), qui demande de reconnaître que sa compatibilité n’est pas vérifiée.
Les deux construisent réellement la version candidate et montrent ce qui change
(F4 ajoute toutes les versions et les modifications ligne par ligne) ; Entrée l’enregistre, puis reconstruit et vérifie le contrôleur.
Update Nixorium peut aussi modifier les fichiers propres de la salle, comme
modules/workstation.nix, quand une version l’exige, au lieu de vous demander
de les modifier à la main. Le récapitulatif montre chaque changement comme
Migration, avec un motif en une ligne, ou comme Manual change quand vous
avez modifié vous-même cet endroit ou que le fichier manque : rien n’est touché
dans ce fichier, et la ligne en dessous dit quoi remplacer. Faites ce
changement comme une modification examinée ordinaire, puis relancez la mise à
jour. L’enregistrement écrit les fichiers modifiés et les consigne avec la mise
à jour, vous pouvez les annuler avec Git comme n’importe quelle mise à jour, et
nixorium-migrations.json note quels changements ont été faits pour que chacun
ne soit fait qu’une fois ; ne le modifiez pas à la main. La nouvelle version
apporte le programme qui fait le changement et l’exécute sur une copie dans un
bac à sable fermé ; la mise à jour est refusée s’il échoue ou change quelque
chose d’inattendu. Un contrôleur en version 3.9.0 ou antérieure ne peut pas le
faire pendant la mise à jour vers une version qui l’exige : suivez d’abord
l’étape à faire une fois.
Après Update Nixorium, le résultat reste à l’écran : Entrée rouvre l’interface sur la nouvelle
version, Échap garde celle en cours. Les PC gardent leur système jusqu’à ce que vous
les mettiez à jour : mettez à jour un PC, vérifiez-le, puis les autres. Avant
d’installer d’autres PC, préparez à nouveau l’installation par le réseau. Si
Update computers affiche alors PIN-OUTDATED, ouvrez Maintenance →
Update Nixorium, sélectionnez la version configurée, marquée « Current ·
select to repair », et confirmez.
Versions du système et menu de démarrage. Chaque application sur le
contrôleur et chaque mise à jour d’un PC ajoute une nouvelle version du
système, une génération, sur cette machine ; les anciennes restent, et le menu
de démarrage (GRUB) en propose jusqu’à dix. Si un PC, ou le contrôleur, ne
démarre plus ou perd le réseau après une mise à jour, redémarrez-le et
choisissez la version précédente dans le menu de démarrage, PC par PC, puis
corrigez la configuration avant de l’appliquer à nouveau ; un PC sans réseau ne
peut pas être réparé depuis le contrôleur. Revenir en arrière change le
système, pas les données, comme une base de données déjà migrée. Les anciennes
versions occupent de l’espace disque : le menu prévient quand le disque du
contrôleur se remplit, et Maintenance → Advanced → Free disk space conserve
les dix plus récentes, celle en cours et celle avec laquelle le PC a démarré ; on tape CLEAN pour confirmer.
10. En cas de problème
Quand quelque chose bloque une opération, le menu dit en une phrase simple ce
qui s’est arrêté, pourquoi et quoi faire ensuite. Appuyez sur Entrée sur cet
avis pour ouvrir l’écran qui règle le problème ; Échap le ferme, et d affiche
le message technique. La vue d’ensemble liste dans les mêmes termes tout ce qui
a été interrompu, et chaque refus indique un
code. Ne
commencez pas par supprimer des fichiers, des clés ou des adresses.
| Symptôme | Que faire |
|---|---|
| Un PC ne démarre pas par le réseau | Vérifiez que l’installation par le réseau est active, que le démarrage réseau passe avant le disque et que le PC est sur le réseau de la salle. Guide |
| L’installateur se charge mais échoue | Arrêtez l’installation par le réseau, préparez-la à nouveau, puis lancez-la. Guide |
| Un PC est installé mais n’apparaît pas | Vérifiez l’alimentation, le câble et l’adresse de salle ; avec deux cartes filaires, il faut une exception d’interface. Guide |
| Un PC apparaît comme Off or not reachable | Il est éteint, ou le réseau ne l’atteint pas : Computer inventory indique lequel des deux. Guide |
Une mise à jour est restée en attente (DEPLOY-PENDING) |
Ouvrez Review the interrupted update (Entrée sur l’avis, ou depuis la vue d’ensemble). L’écran indique pour chaque PC s’il a terminé, s’il est encore en cours de mise à jour ou s’il ne répond pas : appuyez sur c pour continuer sans les PC qui ne répondent pas, puis sur Entrée pour marquer la mise à jour comme examinée. Rien ne change sur les PC ; relancez ensuite la mise à jour. Souvent aucun examen n’est nécessaire : la mise à jour se ferme toute seule quand chaque PC a signalé son résultat. La maintenance attend, et les commandes de classe (Internet, extinction, redémarrage, la programmation) fonctionnent toujours : elles ne laissent tranquilles que les PC nommés par la mise à jour. Update Nixorium et Apply to controller continuent de fonctionner, et si une version plus ancienne refuse encore d’activer le contrôleur, voir le dernier recours. Guide |
| Un PC affiche « This computer has no Nixorium identity » | Son enregistrement d’identité manque ou n’est pas valide : il démarre sans son adresse de la salle. Sur le PC, redémarrez et choisissez la version précédente dans le menu de démarrage, puis mettez-le à jour depuis le contrôleur ; sinon, écrivez son numéro dans l’enregistrement ou réinstallez-le. Guide |
| La mise à jour affiche « identity record names another computer » | La mise à jour a laissé ce PC inchangé exprès et n’écrase jamais l’enregistrement. Décidez quel PC est lequel, corrigez l’enregistrement sur ce PC, puis relancez la mise à jour. Guide |
| Le récapitulatif d’Update Nixorium affiche « Manual change » | La version n’a pas pu modifier l’un de vos fichiers parce que vous avez modifié cet endroit. Faites le changement indiqué par la ligne, enregistrez-le dans Maintenance → Review Git changes, puis relancez la mise à jour. Guide |
| Update Nixorium est refusé à cause de changements dans vos fichiers | Les changements de la nouvelle version ont échoué ou sont allés au-delà de ce qu’ils déclaraient ; la version que vous utilisez continue de fonctionner. Corrigez ce que dit le message, ou restez dessus et rassemblez un rapport de support. Guide |
| Apply to controller a échoué | Lisez l’erreur signalée, corrigez-la, puis faites un nouveau récapitulatif. Guide |
| Un PC ne démarre plus après une mise à jour | Choisissez la version précédente dans le menu de démarrage, puis corrigez la configuration. Guide |
Sauvegarde de plus de 30 jours (BACKUP-DUE) |
Faites-en une nouvelle avec Maintenance → Back up lab. Guide |
| Un élève a perdu un fichier | En tant qu’enseignant sur ce PC, ouvrez Snapshots dans Fichiers. Guide |
| Le contrôleur est en panne ou remplacé | Installez-en un nouveau avec le même numéro et le même réseau, puis Maintenance → Restore lab et Use this lab on this controller ; les PC n’ont pas à être réinstallés. Guide |
| Un enregistrement ou une réinitialisation du modèle a été interrompu | Ouvrez l’élément en attente dans la vue d’ensemble, Finish or undo the reset, et lisez ce qu’il a trouvé. Si aucun fichier ne change, Entrée confirme ; il ne faut taper RESTORE qu’en cas de mélange d’anciens et de nouveaux fichiers. Ne supprimez rien. Guide |
| Une installation par USB ou par le réseau a été interrompue | Ouvrez Resume or close the USB installation ou Recover the controller network depuis la vue d’ensemble ou les écrans Installation, et suivez ce qui est proposé. Pendant une installation USB inachevée, Update Nixorium et Apply to controller restent disponibles, sauf pendant l’écriture du disque du PC ; une installation par le réseau encore ouverte les bloque. Guide |
L’enseignant voit un code comme OP-BUSY |
Attendez la fin de l’opération en cours, ou suivez la ligne de ce code. Guide |
11. Assistant
Assistant est un service payant facultatif du menu administrateur. Décrivez une
modification avec vos propres mots ; vous examinez sa proposition avant de
l’enregistrer, puis vous appliquez et mettez à jour comme d’habitude. Pour un
programme distribué en téléchargement (AppImage, deb ou tarball), il récupère
le fichier une seule fois sur le contrôleur et en fige lui-même le hash : vous
n’avez rien à calculer. Si rien n’a changé depuis l’évaluation faite par
Assistant, le récapitulatif la réutilise et indique depuis combien de temps
elle a été vérifiée, au lieu d’évaluer à nouveau la salle. Après un consentement de plus, il peut
lire des fichiers système du contrôleur et des PC, comme le menu de démarrage ou
les réglages dans /etc, par exemple pour faire de Windows l’entrée de démarrage
par défaut sans vous demander de chercher quoi que ce soit. Il ne lit jamais les
dossiers personnels, les mots de passe, les clés ni les identifiants Wi-Fi. Il peut aussi
lister les périphériques que voit chaque ordinateur (USB, PCI, écrans, cartes
son, files d’impression, sans numéros de série), par exemple pour trouver celui
qui n’est pas détecté, et proposer le nombre d’ordinateurs, les noms des
comptes et l’activation de la vue de classe, avec les mêmes avertissements et
la même vérification que le menu. Si le service
interrompt une réponse, Assistant le signale et vous demande de renvoyer le
message. Une conversation reprise en lecture seule défile avec les flèches ;
Tab permet de choisir entre continuer dans une nouvelle conversation et revenir
en arrière. Par défaut, Assistant enregistre vos conversations sur le service Assistant pendant 90 jours pour repérer et corriger les erreurs d’Assistant (questions, réponses et résultats des outils utilisés, après une expurgation au mieux) ; désactivez-le dans les paramètres d’Assistant (« Save conversations on the service »). Nixorium fonctionne entièrement sans lui
(formules et essai gratuit).
12. Limites et précautions
- L’installation efface tout le disque confirmé, Windows compris s’il se trouve sur ce disque.
- Les instantanés restent sur le même disque et sont renouvelés au bout de cinq démarrages : ce ne sont pas des sauvegardes.
- Les comptes sont locaux et fixes : un administrateur, un enseignant et un compte élève partagé, avec le même mot de passe sur chaque PC. Il n’y a ni identifiants personnels par élève ni annuaire de l’établissement.
- Il n’y a pas d’installation sans surveillance : quelqu’un confirme chaque PC devant son écran, ou son empreinte par SSH.
- Le réseau de la salle est filaire : une salle de PC uniquement en Wi-Fi n’est pas prise en charge. Le démarrage réseau peut ne pas fonctionner avec tous les firmwares et réseaux d’établissement ; l’alternative est USB over SSH.
- « Monitoring stopped on this PC » est une aide pour la classe, pas une barrière de sécurité. Un élève ne peut pas arrêter la vue de classe depuis le terminal de la session : elle redémarre en quelques secondes, et la vignette du poste l’indique entre-temps. Si un élève masque son unité, la vue de classe ne revient qu’au redémarrage suivant, lors de la remise à zéro du dossier.
- Les versions sont validées sur des machines virtuelles ; commencez avec un contrôleur et un PC à vous.
Guides complets
En anglais, à la révision de Nixorium décrite par cette page :