zfs_enable vs zfs_load in loader.conf (but neither works)

Adam Nowacki nowakpl at platinum.linux.pl
Mon Sep 9 17:44:58 UTC 2013


On 2013-09-09 19:15, J David wrote:
> On Mon, Sep 9, 2013 at 8:55 AM, krad <kraduk at gmail.com> wrote:
>> you will find without 'zfs_enable="YES" ' set a lot of the zfs datasets
>> might not get mounted
>
> Matthew has the same understanding of this that I do: zfs_load goes in
> loader.conf and zfs_enable goes in rc.conf.
>
> zfs_load causes the loader to load zfs.ko and opensolaris.ko so that
> the kernel can access the zpool (e.g. to mount the root filesystem)
> after /boot/zfsloader finishes.
>
> zfs_enable in rc.conf activates the /etc/rc.d/zfs and /etc/rc.d/zvol
> scripts.  (And tweaks mountd on nfs servers.)
>
> There are several online ZFS-root recipies that say differently
> (mainly that using zfs_load has been replaced by zfs_enable in
> loader.conf), but I haven't found any authoritative references that
> support that.  Have you?  (Also, it doesn't work in testing; the two
> .ko's aren't loaded if zfs_load is not present.)
>
> In the absence of new info, that seems like the right way to do it.
>
> Things get sticky when it comes to establishing the ZFS root
> filesystem.  There are at least four ways to go about it:
>
> 1) Set vfs.root.mountfrom="zfs:data/root" in loader.conf.
> 2) Run "zpool set bootfs=data/root data" on the pool.
> 3) Run "zfs set mountpoint=/ data/root" on the root filesystem.
> 4) Run "zfs set mountpoint=legacy data/root" on the root filesystem
> and an /etc/fstab entry.
>
> Unfortunately, some of these are not sufficient by themselves, or they
> don't work at all.  So the question is, for 9.2, which (combination
> of?) these is the authoritatively correct way to identify the ZFS root
> filesystem?

zfs set mountpoint=legacy data/root
together with
zpool set bootfs=data/root data

setting vfs.root.mountfrom is not required - this is handled by the 
bootfs property, as is listing / in fstab



More information about the freebsd-fs mailing list