emissary-firmware/misc/turris/omnia/uci-defaults/99-resize-disk.sh

25 lines
506 B
Bash
Raw Normal View History

#!/bin/sh
set -eo pipefail
FLAG_FILE=/root/.disk_resized
if [ -f "$FLAG_FILE" ]; then
exit
fi
DISK=/dev/mmcblk0
PARTITION="${DISK}p2"
parted -s -a opt "$DISK" "resizepart 2 100%"
FS_SIZE="$(unsquashfs -s "$PARTITION" | grep -o 'Filesystem size [0-9]* bytes' | grep -o '[0-9][0-9]*')"
FS_OFFSET="$(expr '(' "$FS_SIZE" + 65535 ')' / 65536 '*' 65536)"
LOOP_DEVICE="$(losetup -f --show -o "$FS_OFFSET" "$PARTITION")"
e2fsck -y -f "$LOOP_DEVICE"
resize2fs "$LOOP_DEVICE"
touch "$FLAG_FILE"
# reboot