#!/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