fix: Root-Dateisystem des Golden Image auf 0755 statt 0700 korrigieren

Real beim Testen entdeckt: mktemp -d legt WORK_DIR mit Modus 0700 an -
debootstrap aendert die Rechte des Zielverzeichnisses selbst nicht, tar -p
uebernimmt diesen Modus beim Verpacken/Entpacken 1:1 als Root-Verzeichnis-
Rechte des gesamten ausgerollten Dateisystems. Ergebnis auf der realen
QEMU-Testplatte: dbus-daemon (wechselt intern auf den unprivilegierten
'messagebus'-Benutzer) bekam 'Permission denied' schon beim Traversieren
von '/', was in einer kompletten Boot-Fehlerkaskade endete (dbus, logind,
NetworkManager, wpa_supplicant, ModemManager schlugen alle fehl - kein
Netzwerk, das eigentliche Ziel von Phase 1). Fix: chmod 0755 direkt nach
debootstrap.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Thomas Stallinger 2026-08-29 23:36:19 +02:00
parent f57bdea9b1
commit fec208be5f

View File

@ -77,6 +77,19 @@ bind_mount() {
echo "==> debootstrap ${SUITE}/${ARCH} nach ${WORK_DIR}" echo "==> debootstrap ${SUITE}/${ARCH} nach ${WORK_DIR}"
debootstrap --arch="${ARCH}" "${SUITE}" "${WORK_DIR}" "${MIRROR}" debootstrap --arch="${ARCH}" "${SUITE}" "${WORK_DIR}" "${MIRROR}"
# Real beim Testen entdeckt (29.08.2026): mktemp -d legt WORK_DIR mit Modus
# 0700 an (sein eigenes Sicherheitsstandardverhalten) - debootstrap aendert
# die Rechte des ihm uebergebenen Zielverzeichnisses selbst nicht, und
# tar -p uebernimmt diesen Modus beim spaeteren Verpacken/Entpacken 1:1 als
# Root-Verzeichnis-Rechte des gesamten ausgerollten Dateisystems. Ergebnis:
# JEDER nicht-root-Prozess (z.B. dbus-daemon, das nach dem Start auf den
# unprivilegierten "messagebus"-Benutzer wechselt) bekommt dann "Permission
# denied" schon beim Traversieren von "/" - reale Boot-Fehlerkaskade
# (dbus/logind/NetworkManager/wpa_supplicant schlagen alle fehl) live auf
# der QEMU-Testplatte beobachtet. Ein Root-Dateisystem MUSS 0755 sein wie
# bei jeder normalen Linux-Installation.
chmod 0755 "${WORK_DIR}"
echo "==> apt-Quellen fuer non-free-firmware + backports einrichten" echo "==> apt-Quellen fuer non-free-firmware + backports einrichten"
# non-free-firmware ist seit Debian 12 eine eigene, standardmaessig NICHT # non-free-firmware ist seit Debian 12 eine eigene, standardmaessig NICHT
# aktive Komponente (anders als bei Ubuntu/Mint) - ohne sie fehlt auf # aktive Komponente (anders als bei Ubuntu/Mint) - ohne sie fehlt auf