diff --git a/scripts/cosmic/cosmic-start.sh b/scripts/cosmic/cosmic-start.sh index 76cbf8b6..4e167fb5 100755 --- a/scripts/cosmic/cosmic-start.sh +++ b/scripts/cosmic/cosmic-start.sh @@ -34,7 +34,12 @@ LOG=/var/log/cosmic mkdir -p "$LOG" 2>/dev/null [ -d "$LOG" ] && [ -w "$LOG" ] || LOG=/tmp -say() { echo "== cosmic :: $*" | tee -a /dev/console /dev/ttyS0 "$LOG/cosmic-start.log" 2>/dev/null; } +# /dev/console SÓLO si nuestro stdout no es ya un terminal. Si el script lo lanzás a mano desde el +# getty, stdout ES la pantalla y /dev/console (=tty0 cuando el cmdline llega vacío, como en la +# firmware del OptiPlex) es LA MISMA pantalla ⇒ cada línea salía DOS VECES, entreverada con lo que +# arje-zero escribe a la consola. Eso es lo que se leía como «basura»: no era ruido ajeno, era esto. +[ -t 1 ] && CONS="" || CONS=/dev/console +say() { echo "== cosmic :: $*" | tee -a $CONS /dev/ttyS0 "$LOG/cosmic-start.log" 2>/dev/null; } # `dump` iba SÓLO al serial, y ahí se perdió la explicación de los tres fallos de la primera corrida # en la imagen de metal: sin puerto serie, los volcados se escriben a la nada. Ahora también a disco. dump() { { echo "---- $1 ----"; cat "$1" 2>/dev/null; } | tee -a /dev/ttyS0 "$LOG/cosmic-start.log" >/dev/null 2>&1; } diff --git a/scripts/cosmic/metal-desktop-image.sh b/scripts/cosmic/metal-desktop-image.sh index 76a0ab10..18212bdc 100755 --- a/scripts/cosmic/metal-desktop-image.sh +++ b/scripts/cosmic/metal-desktop-image.sh @@ -253,6 +253,16 @@ cat > "$MERGED/etc/motd" <<'MOTD' MOTD +# ── /var/log/cosmic VACÍO, y no es un detalle ─────────────────────────────────────────────────── +# Los logs de la sesión van a disco (para que sobrevivan al apagón en metal), pero eso crea una +# trampa: si se valida la imagen arrancándola en QEMU, esa corrida ESCRIBE DENTRO DEL FICHERO DE +# IMAGEN, y al quemarla el USB se lleva el log de la prueba. Pasó: el usuario grepeó el log en metal +# y leyó `drm=virtio-pci` — mi corrida en QEMU, no la suya. Un log viejo que parece nuevo es peor que +# no tener log. +# REGLA: validar sobre una COPIA de la imagen, o regenerarla antes de quemar. Esto es el cinturón. +rm -rf "$MERGED/var/log/cosmic" +install -d -m 755 "$MERGED/var/log/cosmic" + mkdir -p "$MERGED/root/.config" "$MERGED/root/.cache" "$MERGED/run/user/0" "$MERGED/tmp" chmod 1777 "$MERGED/tmp"