freebsd-dev/etc/rc.d/zfs
Enji Cooper 7e7d2a6f50 Make FILESYSTEMS, dumpon, and var not depend on zfs and zvol
Make zfs and zvol come before all of the items that depended on them
previously

MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
2016-05-15 04:38:50 +00:00

68 lines
881 B
Bash
Executable File

#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: zfs
# REQUIRE: mountcritlocal
# BEFORE: FILESYSTEMS var
. /etc/rc.subr
name="zfs"
desc="Mount and share ZFS datasets"
rcvar="zfs_enable"
start_cmd="zfs_start"
stop_cmd="zfs_stop"
required_modules="zfs"
zfs_start_jail()
{
if [ `$SYSCTL_N security.jail.mount_allowed` -eq 1 ]; then
zfs mount -a
fi
}
zfs_start_main()
{
zfs mount -va
zfs share -a
if [ ! -r /etc/zfs/exports ]; then
touch /etc/zfs/exports
fi
}
zfs_start()
{
if [ `$SYSCTL_N security.jail.jailed` -eq 1 ]; then
zfs_start_jail
else
zfs_start_main
fi
}
zfs_stop_jail()
{
if [ `$SYSCTL_N security.jail.mount_allowed` -eq 1 ]; then
zfs unmount -a
fi
}
zfs_stop_main()
{
zfs unshare -a
zfs unmount -a
}
zfs_stop()
{
if [ `$SYSCTL_N security.jail.jailed` -eq 1 ]; then
zfs_stop_jail
else
zfs_stop_main
fi
}
load_rc_config $name
run_rc_command "$1"