X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=scripts%2Fzpool-config%2Flo-raidz2.sh;fp=scripts%2Fzpool-config%2Flo-raidz2.sh;h=6e61293c0b9c93e3c68f6aaa0c6744357396f67f;hb=c9c0d073da561bcbefbdf09c87fc75b227415619;hp=0000000000000000000000000000000000000000;hpb=40b84e7aec6392187722e61e5a4a853b530bf60f;p=zfs.git diff --git a/scripts/zpool-config/lo-raidz2.sh b/scripts/zpool-config/lo-raidz2.sh new file mode 100644 index 0000000..6e61293 --- /dev/null +++ b/scripts/zpool-config/lo-raidz2.sh @@ -0,0 +1,39 @@ +#!/bin/bash +# +# 4 Device Loopback Raid-0 Configuration +# + +FILES="/tmp/zpool-vdev0 \ + /tmp/zpool-vdev1 \ + /tmp/zpool-vdev2 \ + /tmp/zpool-vdev3" +DEVICES="" + +zpool_create() { + for FILE in ${FILES}; do + DEVICE=`unused_loop_device` + msg "Creating ${FILE} using loopback device ${DEVICE}" + rm -f ${FILE} || exit 1 + dd if=/dev/zero of=${FILE} bs=1024k count=0 seek=256 \ + &>/dev/null || die "Error $? creating ${FILE}" + ${LOSETUP} ${DEVICE} ${FILE} || + die "Error $? creating ${FILE} -> ${DEVICE} loopback" + DEVICES="${DEVICES} ${DEVICE}" + done + + msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} raidz2 ${DEVICES} + ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} raidz2 ${DEVICES} || exit 1 +} + +zpool_destroy() { + msg ${ZPOOL} destroy ${ZPOOL_NAME} + ${ZPOOL} destroy ${ZPOOL_NAME} + + for FILE in ${FILES}; do + DEVICE=`${LOSETUP} -a | grep ${FILE} | head -n1|cut -f1 -d:` + msg "Removing ${FILE} using loopback device ${DEVICE}" + ${LOSETUP} -d ${DEVICE} || + die "Error $? destroying ${FILE} -> ${DEVICE} loopback" + rm -f ${FILE} || exit 1 + done +}