summaryrefslogtreecommitdiff
path: root/create-fs
blob: fe8ecfcf4bb10914d253e70ad787a37fe8930050 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
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"