Vorabprüfung: proot-distro und Rootfs vor jedem Beweis
Aus dem Gerätelauf: S2 lief bis Stufe 1 durch und scheiterte dann an 'proot-distro: cannot execute: required file not found'. Danach meldete die Auswertung folgerichtig 'S2 gescheitert' — was den Beweis inhaltlich belastet, obwohl nur die Grundlage fehlte. Genau diese Verwechslung soll der Spike nicht produzieren. Alle Beweise prüfen jetzt vorab, ob proot-distro ausführbar ist und das Rootfs steht, und brechen sonst mit klarer Ansage ab statt mitten im Test aufzulaufen. Die Meldung selbst ist irreführend: 'required file not found' heißt nicht, dass proot-distro fehlt — bash hat es gefunden und nennt den vollen Pfad. Es fehlt der Interpreter aus dessen Shebang-Zeile. Die Prüfung sagt das ausdrücklich und nennt Datei und Shebang, statt den Suchenden an der falschen Stelle graben zu lassen. 00-bootstrap versucht in dem Fall selbsttätig eine Neuinstallation. Dazu die Berechtigungsprüfung entschärft: dumpsys verlangt die DUMP-Berechtigung, die eine gewöhnliche App nicht hat. Das Fehlschlagen ist erwartbar und kein Warnsignal; die Meldung nennt jetzt den Weg über adb statt Ratlosigkeit zu säen. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -118,6 +118,24 @@ try termux-wake-lock && ok "Wake-Lock aktiv" || warn "Wake-Lock nicht gesetzt"
|
||||
|
||||
# ── Debian-Rootfs ────────────────────────────────────────────────────────────
|
||||
section "Debian-Rootfs"
|
||||
# Erst prüfen, ob proot-distro überhaupt LÄUFT. Ein installiertes Paket, dessen
|
||||
# Shebang-Interpreter fehlt, meldet sich mit "cannot execute: required file not
|
||||
# found" — eine Meldung, die aussieht als fehle das Programm, obwohl es da ist.
|
||||
if ! proot-distro list >/dev/null 2>&1; then
|
||||
fail "proot-distro ist installiert, lässt sich aber nicht ausführen"
|
||||
PD="$(command -v proot-distro)"
|
||||
log " Datei: $PD"
|
||||
log " Shebang: $(head -1 "$PD" 2>/dev/null)"
|
||||
hint "Meist fehlt der Interpreter aus der Shebang-Zeile, nicht das Programm."
|
||||
hint "Reparaturversuch:"
|
||||
try pkg install -y bash coreutils proot proot-distro
|
||||
if ! proot-distro list >/dev/null 2>&1; then
|
||||
fail "Bleibt defekt — ohne proot-distro geht es nicht weiter."
|
||||
exit 1
|
||||
fi
|
||||
ok "Nach der Neuinstallation läuft proot-distro"
|
||||
fi
|
||||
|
||||
if proot-distro list --installed 2>/dev/null | grep -q "^$DISTRO\b" \
|
||||
|| [ -d "$PREFIX/var/lib/proot-distro/installed-rootfs/$DISTRO" ]; then
|
||||
ok "$DISTRO bereits installiert"
|
||||
|
||||
Reference in New Issue
Block a user