#!/bin/sh
disk=/dev/disk/cloud/azure_resource
part=/dev/disk/cloud/azure_resource-part1
mp=/mnt
mounted_at() {
dev=$(awk '$2 == mp { print $1; exit(0); };' mp="$1" /proc/mounts)
echo "$dev"
}
fail() { echo "$@" 1>&2; exit 1; }
dev=$(mounted_at $mp)
if [ -n "$dev" ]; then
echo "unmounting '$dev' at $mp"
umount "$mp" || fail "failed unmount $dev"
after_dev=$(mounted_at "$mp")
[ -z "$after_dev" ] || fail "still mounted $after_dev at $mp"
else
echo "nothing mounted at $mp"
fi
out=$(echo "2048,$((2*1024*100)),7" | sfdisk "$disk" 2>&1) ||
fail "failed sfdisk $disk: $out"
echo "repartitioned"
udevadm settle
dev=$(mounted_at "$mp")
if [ -n "$dev" ]; then
fail "$dev is now mounted at $dev"
fi
#ls -l $disk $part
#sleep 1
time mkfs.ntfs --quick "$part"