Boot environments and zfs canmount=noauto
Andriy Gapon
avg at FreeBSD.org
Thu Jul 28 12:45:29 UTC 2016
I also would like to add, just in case, that I never set a BE's
mountpoint to '/'. I leave it at its default value like
/pond/ROOT/foobar. When the BE is active it would be mounted at /
anyway. And when it is not active and I want to access it for some
modifications, etc, then I can mount it simply with zfs mount and have
it at a non-interfering location. Ditto for its subordinate datasets.
I am saying this, because it seems that that is not how the FreeBSD
installer ("zfsboot") configures the default BE that it creates. I am
not sure what sysutils/beadm expects and configures in this regard. I
use my own custom script for doing beadm-like things.
On 28/07/2016 13:34, Andriy Gapon wrote:
> On 28/07/2016 05:18, Allan Jude wrote:
>> On 2016-07-27 22:05, Randy Westlund wrote:
>>> I'm trying to follow Michael Dexter's post about using bhyve with boot
>>> environments. It involves moving all child datasets under
>>> zroot/ROOT/default, so that you can have entirely independent systems.
>>>
>>> http://callfortesting.org/bhyve-boot-environments/
>>>
>>>> Let's change the datasets with "canmount on" to "canmount noauto":
>>>> [snip]
>>>> Considering that this setting is harmless to a system with a single
>>>> boot environment, I would not object to it being the default. Hint
>>>> hint.
>>>
>>> When I set all the datasets with canmount=on to canmount=noauto, only
>>> zroot/ROOT/default gets mounted on next boot. It's my understanding
>>> that 'zfs mount -a' doesn't mount datasets with canmount=noauto, but if
>>> I leave them with canmount=on, they will try to mount regardless of
>>> which BE is active.
>>>
>>> I'm trying this with 11.0-BETA2. Can sometime tell me what I'm missing?
>>>
>>
>> You are not missing anything. This is why the default is to have all
>> files that are specific to a BE be in the root dataset, and only files
>> that are global (like home directory, etc) be outside of the BE.
>
> Locally I have the following rc script to handle subordinate datasets of
> a boot environment: http://dpaste.com/0Q0JPGN.txt
> It is designed for exactly the scenario described above.
> The script is automatically enabled when zfs_enable is enabled.
>
> It would probably make sense to include the script into the OS after
> some testing and a review.
>
--
Andriy Gapon
More information about the freebsd-current
mailing list