#!/bin/bash -ex VG=delta LV=ext4test LVSIZE=40T MOUNTPOINT="/mnt/iso" RESIZE2FS=/home/anssi/src/git/e2fsprogs/resize/resize2fs INITIAL_BLOCKS=4294967295 NEW_BLOCKS=$((INITIAL_BLOCKS * 2)) lvcreate -l 100%FREE -V "$LVSIZE" -n "$LV" "$VG" mkfs.ext4 -O meta_bg,64bit,^resize_inode "/dev/$VG/$LV" "$INITIAL_BLOCKS" mount "/dev/$VG/$LV" "$MOUNTPOINT" mkdir "$MOUNTPOINT/test" for file in 1 2; do dd if=/dev/urandom bs=1M count=50 of="$MOUNTPOINT/test/$file" done md5sum $MOUNTPOINT/test/* > $MOUNTPOINT/MD5SUM for N in $NEW_BLOCKS $((NEW_BLOCKS + 50)); do $RESIZE2FS "/dev/$VG/$LV" "$N" umount "$MOUNTPOINT" fsck.ext4 -ncf "/dev/$VG/$LV" mount "/dev/$VG/$LV" "$MOUNTPOINT" md5sum -c "$MOUNTPOINT/MD5SUM" done