From 7d5e6f5be1a444f8e7a8bd06337307ed978b329d Mon Sep 17 00:00:00 2001 From: Adam Carr Date: Sat, 19 Sep 2026 12:49:08 -0700 Subject: [PATCH] flash-one.sh: handle desktop automounter interference during resize/mount --- scripts/flash-one.sh | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/scripts/flash-one.sh b/scripts/flash-one.sh index 17410dd..23d6949 100755 --- a/scripts/flash-one.sh +++ b/scripts/flash-one.sh @@ -40,8 +40,15 @@ sleep 1 # --- grow root partition to fill the disk --------------------------------- echo ",+" | sfdisk --no-reread -N 2 /dev/$DEV -partprobe /dev/$DEV -sleep 1 +for i in $(seq 1 10); do + partprobe /dev/$DEV 2>/dev/null || true + udevadm settle 2>/dev/null || true + umount /dev/${DEV}1 /dev/${DEV}2 2>/dev/null + SIZE2=$(blockdev --getsize64 /dev/${DEV}2 2>/dev/null || echo 0) + [ "$SIZE2" -gt 200000000000 ] && break + sleep 1 +done +[ "$SIZE2" -gt 200000000000 ] || fail "kernel never saw the resized partition" e2fsck -fp /dev/${DEV}2 >/dev/null resize2fs /dev/${DEV}2 >/dev/null @@ -49,8 +56,12 @@ resize2fs /dev/${DEV}2 >/dev/null B=/mnt/planck-boot R=/mnt/planck-root mkdir -p $B $R -mount /dev/${DEV}1 $B -mount /dev/${DEV}2 $R +for i in 1 2 3; do + umount /dev/${DEV}1 /dev/${DEV}2 2>/dev/null + mount /dev/${DEV}1 $B 2>/dev/null && mount /dev/${DEV}2 $R 2>/dev/null && break + sleep 2 +done +mountpoint -q $B && mountpoint -q $R || fail "could not mount partitions (desktop keeps grabbing them)" # enable ssh on first boot touch $B/ssh