]>
Commit | Line | Data |
---|---|---|
c9c0d073 BB |
1 | #!/bin/bash |
2 | # | |
3 | # 4 Device Loopback Raid-0 Configuration | |
4 | # | |
ea04106b AX |
5 | FILEDIR=${FILEDIR:-/var/tmp} |
6 | FILES=${FILES:-"$FILEDIR/file-vdev0 $FILEDIR/file-vdev1 \ | |
7 | $FILEDIR/file-vdev2 $FILEDIR/file-vdev3"} | |
c9c0d073 BB |
8 | DEVICES="" |
9 | ||
10 | zpool_create() { | |
0ee8118b BB |
11 | check_loop_utils |
12 | ||
c9c0d073 BB |
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 | ||
ea04106b AX |
24 | msg ${ZPOOL} create ${ZPOOL_FLAGS} ${ZPOOL_NAME} raidz ${DEVICES} |
25 | ${ZPOOL} create ${ZPOOL_FLAGS} ${ZPOOL_NAME} raidz ${DEVICES} || exit 1 | |
c9c0d073 BB |
26 | } |
27 | ||
28 | zpool_destroy() { | |
29 | msg ${ZPOOL} destroy ${ZPOOL_NAME} | |
30 | ${ZPOOL} destroy ${ZPOOL_NAME} | |
31 | ||
608860b6 BB |
32 | # Delay to ensure device is closed before removing loop device |
33 | sleep 1 | |
34 | ||
c9c0d073 BB |
35 | for FILE in ${FILES}; do |
36 | DEVICE=`${LOSETUP} -a | grep ${FILE} | head -n1|cut -f1 -d:` | |
37 | msg "Removing ${FILE} using loopback device ${DEVICE}" | |
38 | ${LOSETUP} -d ${DEVICE} || | |
39 | die "Error $? destroying ${FILE} -> ${DEVICE} loopback" | |
40 | rm -f ${FILE} || exit 1 | |
41 | done | |
42 | } |