alpi-fiche : ne plus prendre un /cdrom vide pour une session live

L'installateur de Mint laisse derrière lui un /cdrom vide sur la machine
installée. La détection s'y fiait, et déclarait donc « session live » des
machines parfaitement installées — ce qui fausse aussi le chronométrage,
puisqu'il se calcule entre les deux relevés.

Restent les deux signes qui ne mentent pas : la racine montée en overlay
ou squashfs, et boot=casper sur la ligne du noyau. /rofs disparaît avec
/cdrom, n'ayant pas plus de valeur probante.

Constat de la session alpicache, sur une machine réelle. Je n'ai pas pu
le reproduire moi-même — la machine d'essai ne se laissait pas piloter —
mais le changement est sûr dans les deux sens : ces deux signes-là sont
présents sur toute session live, et aucun ne l'est sur un système
installé.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BE4rvHVETRoWnYNDTGssdo
This commit is contained in:
Alpinux 2026-09-24 22:38:04 +02:00
parent d1f400a599
commit b5efc63600

View file

@ -106,11 +106,17 @@ ARCHITECTURE="$(uname -m)"
# comparer — un disque qui allait bien le matin et qui se plaint le soir, cela # comparer — un disque qui allait bien le matin et qui se plaint le soir, cela
# se voit. # se voit.
# #
# Une session live monte sa racine en overlay au-dessus d'un squashfs, et garde # Une session live monte sa racine en overlay au-dessus d'un squashfs, et
# un /cdrom ou un /rofs. Aucun de ces signes n'existe sur un système installé. # 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.
MOMENT="post-installation" MOMENT="post-installation"
if [ -d /rofs ] || [ -d /cdrom ] \ if findmnt -n -o FSTYPE / 2>/dev/null | grep -qE '^(overlay|aufs|squashfs)$' \
|| findmnt -n -o FSTYPE / 2>/dev/null | grep -qE '^(overlay|aufs|squashfs)$' \
|| grep -qE '(^| )(boot=casper|boot=live)( |$)' /proc/cmdline 2>/dev/null; then || grep -qE '(^| )(boot=casper|boot=live)( |$)' /proc/cmdline 2>/dev/null; then
MOMENT="live" MOMENT="live"
fi fi