59 lines
940 B
Bash
59 lines
940 B
Bash
#!/bin/bash
|
|
|
|
. /etc/rc.conf
|
|
. /etc/rc.d/functions
|
|
|
|
case "$1" in
|
|
start)
|
|
stat_busy "Starting zfs"
|
|
|
|
if [ ! -c /dev/zfs ]; then
|
|
modprobe zfs
|
|
if [ $? -ne 0 ]; then
|
|
stat_fail
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
# Import ZFS pools (via cache file)
|
|
if [ -f /etc/zfs/zpool.cache ]; then
|
|
/usr/sbin/zpool import -c /etc/zfs/zpool.cache -aN 2>/dev/null
|
|
if [ $? -ne 0 ]; then
|
|
stat_fail
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
# Mount ZFS filesystems
|
|
/usr/sbin/zfs mount -a
|
|
if [ $? -ne 0 ]; then
|
|
stat_fail
|
|
exit 1
|
|
fi
|
|
|
|
# Export ZFS flesystems
|
|
/usr/sbin/zfs share -a
|
|
if [ $? -ne 0 ]; then
|
|
stat_fail
|
|
exit 1
|
|
fi
|
|
|
|
add_daemon zfs
|
|
stat_done
|
|
;;
|
|
stop)
|
|
stat_busy "Stopping zfs"
|
|
zfs umount -a
|
|
rm_daemon zfs
|
|
stat_done
|
|
;;
|
|
restart)
|
|
$0 stop
|
|
$0 start
|
|
;;
|
|
*)
|
|
echo "usage: $0 {start|stop|restart}"
|
|
esac
|
|
|
|
exit 0
|