Prüfe neue Partitionsgrößen vor USB-Schreibzugriff
Some checks failed
Tests / test (push) Has been cancelled

This commit is contained in:
2026-10-15 09:08:28 +02:00
parent 0c2fde5929
commit 8c74a52f01

View File

@@ -38,11 +38,20 @@ wipefs -a "$DEVICE" >/dev/null
sgdisk -n 1:2048:+2M -t 1:ef02 -c 1:BIOS_GRUB "$DEVICE"
sgdisk -n 2:0:+7G -t 2:ef00 -c 2:INTAKE_BOOT "$DEVICE"
sgdisk -n 3:0:0 -t 3:8300 -c 3:INTAKE_DATA "$DEVICE"
partprobe "$DEVICE" || true
udevadm settle
if [[ "$DEVICE" =~ [0-9]$ ]]; then p2="${DEVICE}p2"; p3="${DEVICE}p3"; else p2="${DEVICE}2"; p3="${DEVICE}3"; fi
for i in {1..10}; do [[ -b "$p3" ]] && break; sleep 1; done
[[ -b "$p3" ]] || { echo 'Partitions not visible after repartition.' >&2; exit 1; }
for i in {1..10}; do
blockdev --rereadpt "$DEVICE" 2>/dev/null || true
partprobe "$DEVICE" 2>/dev/null || true
udevadm settle
p2_size=$(blockdev --getsize64 "$p2" 2>/dev/null || echo 0)
p3_size=$(blockdev --getsize64 "$p3" 2>/dev/null || echo 0)
((p2_size >= 7*1024*1024*1024 && p3_size >= 4*1024*1024*1024)) && break
sleep 1
done
((p2_size >= 7*1024*1024*1024 && p3_size >= 4*1024*1024*1024)) || {
echo 'Kernel still reports stale partition sizes; reconnect the USB and retry.' >&2
exit 1
}
mkfs.vfat -F32 -n INTAKE_BOOT "$p2"
mkfs.ext4 -F -L INTAKE_DATA "$p3"
TMP=$(mktemp -d)