]>
Commit | Line | Data |
---|---|---|
c9c0d073 BB |
1 | #!/bin/bash |
2 | # | |
3 | # 4 Device Loopback Raid-0 Configuration | |
4 | # | |
5 | ||
6 | FILES_M1="/tmp/zpool-vdev0 \ | |
7 | /tmp/zpool-vdev1" | |
8 | FILES_M2="/tmp/zpool-vdev2 \ | |
9 | /tmp/zpool-vdev3" | |
10 | FILES="${FILES_M1} ${FILES_M2}" | |
11 | DEVICES_M1="" | |
12 | DEVICES_M2="" | |
13 | ||
14 | zpool_create() { | |
15 | for FILE in ${FILES_M1}; do | |
16 | DEVICE=`unused_loop_device` | |
17 | msg "Creating ${FILE} using loopback device ${DEVICE}" | |
18 | rm -f ${FILE} || exit 1 | |
19 | dd if=/dev/zero of=${FILE} bs=1024k count=0 seek=256 \ | |
20 | &>/dev/null || die "Error $? creating ${FILE}" | |
21 | ${LOSETUP} ${DEVICE} ${FILE} || | |
22 | die "Error $? creating ${FILE} -> ${DEVICE} loopback" | |
23 | DEVICES_M1="${DEVICES_M1} ${DEVICE}" | |
24 | done | |
25 | ||
26 | for FILE in ${FILES_M2}; do | |
27 | DEVICE=`unused_loop_device` | |
28 | msg "Creating ${FILE} using loopback device ${DEVICE}" | |
29 | rm -f ${FILE} || exit 1 | |
30 | dd if=/dev/zero of=${FILE} bs=1024k count=0 seek=256 \ | |
31 | &>/dev/null || die "Error $? creating ${FILE}" | |
32 | ${LOSETUP} ${DEVICE} ${FILE} || | |
33 | die "Error $? creating ${FILE} -> ${DEVICE} loopback" | |
34 | DEVICES_M2="${DEVICES_M2} ${DEVICE}" | |
35 | done | |
36 | ||
37 | msg ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} \ | |
38 | mirror ${DEVICES_M1} mirror ${DEVICES_M2} | |
39 | ${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} \ | |
40 | mirror ${DEVICES_M1} mirror ${DEVICES_M2} | |
41 | } | |
42 | ||
43 | zpool_destroy() { | |
44 | msg ${ZPOOL} destroy ${ZPOOL_NAME} | |
45 | ${ZPOOL} destroy ${ZPOOL_NAME} | |
46 | ||
47 | for FILE in ${FILES}; do | |
48 | DEVICE=`${LOSETUP} -a | grep ${FILE} | head -n1|cut -f1 -d:` | |
49 | msg "Removing ${FILE} using loopback device ${DEVICE}" | |
50 | ${LOSETUP} -d ${DEVICE} || | |
51 | die "Error $? destroying ${FILE} -> ${DEVICE} loopback" | |
52 | rm -f ${FILE} || exit 1 | |
53 | done | |
54 | } |