The default zfs filesystem layout created by the 9.3-RELEASE installer is not compatible with sysutils/beadm, rendering many beadm features useless and even leading to BE corruption. For example, the /usr/local and the /var/db/pkg directories are created on different zfs filesystems, one inside the BE and the other outside, which can cause system corruption when using boot environments. Could the 9x installer create zfs filesystem exactly the way the 10x does?
I would also be very grateful for any help in defining beadm-friendliness of a system. It is clear that a system put totally within a BE (everything on the root dataset) would be beadm-friendly. It is also clear that there are some directories which don't have to be within a BE (/home and /var/{log,mail} are first to come to mind). Such are the directories used to store data as opposed to the "system state" or "system itself." So the approach should be "which directories can we safely exclude from the BE without compromising the system's consistency."
Look at the layout provided in FreeBSD 10.2-RELEASE. You can provide this layout as an environment variable before you run the 9.3-RELEASE install to get the same layout.
Allan, (In reply to Allan Jude from comment #2) That's good news, but I do not quite understand at what moment I should provide the said environment variable. For example, I boot from the CD, select interactive "Install"... then what?
I assume that the default 10.2-RELEASE install scheme is OK (while 9.3-RELEASE is not). As we can not change the default install scheme for 9.3 we may change the default in 9-STABLE so the 9.4-RELEASE would be 'beadm' friendly. ... or we need to do anything else/more? Regards, vermaden
(In reply to vermaden from comment #4) > I assume that the default 10.2-RELEASE install scheme is OK > (while 9.3-RELEASE is not). Correct. > we may change the default in 9-STABLE so the > 9.4-RELEASE would be 'beadm' friendly. That would be great. > or we need to do anything else/more? If we could suggest a workaround to modify $ZFSBOOT_DATASETS during 9.3-RELEASE install process, or at least document it somwhere :-) that would be great too. Where is the $ZFSBOOT_DATASETS syntax documented at all?
> If we could suggest a workaround to modify $ZFSBOOT_DATASETS > during 9.3-RELEASE install process, or at least document it > somwhere :-) that would be great too. > > Where is the $ZFSBOOT_DATASETS syntax documented at all? There are *mentions* of it here, but I would call that _documentation_ ... https://wiki.freebsd.org/SummerOfCode2014/FreeBSD_PXE_preseed/Howto https://www.freebsd.org/cgi/man.cgi?bsdinstall%288%29
ERRATA: I *WOULD NOT* call that _documentation_ ... Regards, vermaden
(In reply to vermaden from comment #7) I agree. I have read bsdinstall(8) too but it is IMHO too spartan and lacks good examples. BTW where the hell is $ZFSBOOT_DATASETS defined in the installation media? I have searched the ISO image in vain.
(In reply to vas from comment #8) https://svnweb.freebsd.org/base/release/9.3.0/usr.sbin/bsdinstall/scripts/zfsboot?view=markup on the install media: /usr/libexec/bsdinstall/zfsboot
(In reply to vermaden from comment #4) > so the 9.4-RELEASE would be 'beadm' friendly There will not be a 9.4. The stable/9 branch is finished, and support will be dropped when 9.3 hits EOL in about a year.
(In reply to Kamil Czekirda from comment #9) So, I can modify/redefine $ZFSBOOT_DATASETS in /usr/libexec/bsdinstall/zfsboot on the installation media. That is good enough for me. And if there are no plans for a 9.4-RELEASE, we could possibly close this case. Or maybe it's still a good idea to change the default in 9-STABLE just in case.
Everything is clear. The stable/9 branch is finished.