Compare commits

..

1 commit

Author SHA1 Message Date
Alpinux
6f2b9cc0f0 Verser le relevé de fiche matérielle dans le dépôt
La demande initiale faisait télécharger un script depuis alpicache et
l'exécuter en root sur la machine de chaque participant. Le relevé est
désormais versionné ici, relu comme le reste, et appelé localement : rien
n'est tiré du réseau, rien n'est exécuté sans avoir été publié.

Le script vient de la session alpicache, éprouvé sur place. Il relève le
modèle, le processeur, la mémoire et le détail de ses connecteurs, les
disques et leur état SMART, puis envoie la fiche au serveur de la salle.
Depuis une session live, il rend en plus un verdict — bon, avec réserves,
ou ne pas installer — que le bénévole peut opposer à un disque qui
faiblit pendant que la machine est encore là.

install.sh l'appelle en tête de fichier, dans sa passe root, et seulement
s'il le trouve à côté de lui : une machine qui rejoue le script chez son
propriétaire n'envoie rien à personne.

L'en-tête du relevé disait « rien qui touche à la personne ». C'était
inexact : la fiche emporte le nom de la machine — souvent un prénom — et
l'adresse matérielle de la carte réseau. Les deux sont maintenant
nommés, dans le script comme dans le guide, avec la consigne qui va
avec : le dire à la personne dont on installe l'ordinateur.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BE4rvHVETRoWnYNDTGssdo
2026-09-24 22:15:33 +02:00
2 changed files with 8 additions and 35 deletions

View file

@ -106,17 +106,11 @@ ARCHITECTURE="$(uname -m)"
# comparer — un disque qui allait bien le matin et qui se plaint le soir, cela
# se voit.
#
# Une session live monte sa racine en overlay au-dessus d'un squashfs, et
# démarre avec « boot=casper » sur la ligne du noyau. Ces deux signes-là ne
# mentent pas.
#
# L'existence d'un /cdrom, en revanche, n'est pas un signe : l'installateur de
# Mint en laisse un derrière lui, vide, sur la machine installée. S'y fier
# faisait déclarer « session live » des machines parfaitement installées — et
# comme le chronométrage se calcule entre les deux relevés, la mesure partait
# avec. Constat de la session alpicache, sur une machine réelle.
# Une session live monte sa racine en overlay au-dessus d'un squashfs, et garde
# un /cdrom ou un /rofs. Aucun de ces signes n'existe sur un système installé.
MOMENT="post-installation"
if findmnt -n -o FSTYPE / 2>/dev/null | grep -qE '^(overlay|aufs|squashfs)$' \
if [ -d /rofs ] || [ -d /cdrom ] \
|| findmnt -n -o FSTYPE / 2>/dev/null | grep -qE '^(overlay|aufs|squashfs)$' \
|| grep -qE '(^| )(boot=casper|boot=live)( |$)' /proc/cmdline 2>/dev/null; then
MOMENT="live"
fi

View file

@ -359,32 +359,11 @@ configuration_apt() {
# GRUB : sélection automatique de la dernière entrée utilisée #
###############################################################
modif_grub() {
# Rien à faire si c'est déjà en place.
#
# update-grub lance os-prober, qui part sonder toutes les partitions de la
# machine à la recherche d'autres systèmes, puis régénère la configuration
# entière : vingt à trente secondes qu'on ne rattrape pas, et qu'on payait
# jusqu'ici à chaque exécution, y compris quand il n'y avait rien à
# changer. Sur une install party de quinze machines, cela se voit.
if grep -q '^GRUB_DEFAULT=saved' /etc/default/grub \
&& grep -q '^GRUB_SAVEDEFAULT=true' /etc/default/grub; then
echo -e "==> GRUB est déjà configuré, rien à changer\n"
return 0
fi
echo -e "==> Modification de GRUB\n"
# On commente la ligne d'origine, puis on ajoute les nôtres si elles
# manquent. Les ajouter plutôt que les insérer règle deux choses : le
# fichier ne se retrouve plus avec des lignes indentées — GRUB les accepte,
# mais elles trompent la lecture quand on vient déboguer —, et la fonction
# fait toujours son travail lorsque « GRUB_DEFAULT=0 » a disparu, ce qui
# arrive dès qu'un autre outil est passé avant nous.
sed -i 's/^GRUB_DEFAULT=0/#&/' /etc/default/grub
grep -q '^GRUB_DEFAULT=saved' /etc/default/grub \
|| echo 'GRUB_DEFAULT=saved' >> /etc/default/grub
grep -q '^GRUB_SAVEDEFAULT=true' /etc/default/grub \
|| echo 'GRUB_SAVEDEFAULT=true' >> /etc/default/grub
# On comment la ligne "GRUB_DEFAULT=0" et on ajoute les "bonnes" options
sed -i '/^GRUB_DEFAULT=0/ i#GRUB_DEFAULT=0\
GRUB_DEFAULT=saved\
GRUB_SAVEDEFAULT=true' /etc/default/grub
# On met à jour GRUB
update-grub
}