diff options
-rwxr-xr-x | create-fs | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/create-fs b/create-fs new file mode 100755 index 0000000..fe8ecfc --- /dev/null +++ b/create-fs @@ -0,0 +1,46 @@ +#!/bin/bash + +set -eu -o pipefail + +dev="$1" +dir="$2" +fstype="$3" +n="$4" + +echo +echo "unmount $dev" +sudo umount "$dev" || true + +echo +echo "zero $dev" +sudo dd if=/dev/zero of="$dev" bs=1M status=progress || true + +echo +echo "mkfs $dev" +case "$fstype" in + ext4) + sudo mke2fs -i 1024 -N 2000000000 -F "$dev" ;; + btrfs) + sudo mkfs.btrfs "$dev" ;; + *) + echo "unknown fs type $fstype" 1>&2 ; exit 1 ;; +esac + +echo +echo "mount $dev on $dir" +sudo mount "$dev" "$dir" + +echo +echo "create $dir/files" +sudo install -d -o "$(id -un)" -g "$(id -gn)" "$dir/files" + +echo +echo "create $n files" +./create-files "$dir/files" "$n" + +echo +echo "unmount $dev" +sudo umount "$dev" + +echo +echo "done" |