47 lines
1.5 KiB
Bash
47 lines
1.5 KiB
Bash
|
#!/bin/bash
|
||
|
#
|
||
|
# 1 scsi_debug devices on top of which is layered no raid.
|
||
|
#
|
||
|
|
||
|
SDSIZE=${SDSIZE:-128}
|
||
|
SDHOSTS=${SDHOSTS:-1}
|
||
|
SDTGTS=${SDTGTS:-1}
|
||
|
SDLUNS=${SDLUNS:-1}
|
||
|
LDMOD=/sbin/modprobe
|
||
|
|
||
|
zpool_create() {
|
||
|
check_sd_utils
|
||
|
|
||
|
test `${LSMOD} | grep -c scsi_debug` -gt 0 && \
|
||
|
(echo 0 >/sys/module/scsi_debug/parameters/every_nth && \
|
||
|
${RMMOD} scsi_debug || exit 1)
|
||
|
udev_trigger
|
||
|
|
||
|
msg "${LDMOD} scsi_debug dev_size_mb=${SDSIZE} " \
|
||
|
"add_host=${SDHOSTS} num_tgts=${SDTGTS} " \
|
||
|
"max_luns=${SDLUNS}"
|
||
|
${LDMOD} scsi_debug \
|
||
|
dev_size_mb=${SDSIZE} \
|
||
|
add_host=${SDHOSTS} \
|
||
|
num_tgts=${SDTGTS} \
|
||
|
max_luns=${SDLUNS} || \
|
||
|
die "Error $? creating scsi_debug devices"
|
||
|
udev_trigger
|
||
|
SDDEVICE=`${LSSCSI}|${AWK} '/scsi_debug/ { print $6; exit }'`
|
||
|
|
||
|
msg "${PARTED} -s ${SDDEVICE} mklabel gpt"
|
||
|
${PARTED} -s ${SDDEVICE} mklabel gpt || \
|
||
|
(${RMMOD} scsi_debug && die "Error $? creating gpt label")
|
||
|
|
||
|
msg "${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${SDDEVICE}"
|
||
|
${ZPOOL} create ${FORCE_FLAG} ${ZPOOL_NAME} ${SDDEVICE} || \
|
||
|
(${RMMOD} scsi_debug && exit 1)
|
||
|
}
|
||
|
|
||
|
zpool_destroy() {
|
||
|
msg ${ZPOOL} destroy ${ZPOOL_NAME}
|
||
|
${ZPOOL} destroy ${ZPOOL_NAME}
|
||
|
msg "${RMMOD} scsi_debug"
|
||
|
${RMMOD} scsi_debug || die "Error $? removing scsi_debug devices"
|
||
|
}
|