]> git.proxmox.com Git - mirror_zfs.git/blob - scripts/zpool-config/lo-raidz.sh
Add build system
[mirror_zfs.git] / scripts / zpool-config / lo-raidz.sh
1 #!/bin/bash
2 #
3 # 4 Device Loopback Raid-0 Configuration
4 #
5
6 FILES="/tmp/zpool-vdev0 \
7 /tmp/zpool-vdev1 \
8 /tmp/zpool-vdev2 \
9 /tmp/zpool-vdev3"
10 DEVICES=""
11
12 zpool_create() {
13 for FILE in ${FILES}; do
14 DEVICE=`unused_loop_device`
15 msg "Creating ${FILE} using loopback device ${DEVICE}"
16 rm -f ${FILE} || exit 1
17 dd if=/dev/zero of=${FILE} bs=1024k count=0 seek=256 \
18 &>/dev/null || die "Error $? creating ${FILE}"
19 ${LOSETUP} ${DEVICE} ${FILE} ||
20 die "Error $? creating ${FILE} -> ${DEVICE} loopback"
21 DEVICES="${DEVICES} ${DEVICE}"
22 done
23
24 msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} raidz ${DEVICES}
25 ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} raidz ${DEVICES} || exit 1
26 }
27
28 zpool_destroy() {
29 msg ${ZPOOL} destroy ${ZPOOL_NAME}
30 ${ZPOOL} destroy ${ZPOOL_NAME}
31
32 for FILE in ${FILES}; do
33 DEVICE=`${LOSETUP} -a | grep ${FILE} | head -n1|cut -f1 -d:`
34 msg "Removing ${FILE} using loopback device ${DEVICE}"
35 ${LOSETUP} -d ${DEVICE} ||
36 die "Error $? destroying ${FILE} -> ${DEVICE} loopback"
37 rm -f ${FILE} || exit 1
38 done
39 }