Installing FreeBSD on multiple encrypted drives

Hi everyone! I recently got a brand new computer and I was planning on putting FreeBSD on it. However, I've run into a problem; I don't know how to setup encrypted ZFS over multiple disks (an NVMe M.2 and a regular old HDD). The installer isn't capable of it (although it can't even install regular ZFS in any configuration except over the entire disk), so I've tried manually installing it. I've had good luck in the past following this (https://gist.github.com/Teknoman117/79c95c3634fb6dc9fc5a7702a9b65b70), which is the output of bsdinstall, and I just filter for the commands it's issuing and then modify it for what I need.

However, I don't know how to put a root for FreeBSD on the SSD and /home on the HDD. I tried making a separate pool for root and /home, but when I try to boot it FreeBSD says it can't find it. I made sure to mark it mountable at /home, and I also tried again making it a subvolume /home, but it didn't work either. And the root partition boots just fine, so it's not like ZFS or GELI isn't loading properly :/

Does anyone know what to do for such a situation?
 
Hi, after booting had you tried to import the pool where is /home? You also may need to issue zfs mount pool after importing that.

I use /home in a separated disk/pool, and what I did was install the system in the disk I wanted it, without creating any user yet.

After that I booted in the new system, prepared the /home pool, imported it, mounted and then created the user.
 
Would you mind giving a rough overview or perhaps a guide on how exactly to create the /home pool? Anything to enter in /boot/loader.conf for GELI, ZFS flags, that sort of thing? I'll try reinstalling it without making a home partition this time and work on it afterwards. Thanks for the tip!
 
I do not use it encrypted (I am waiting the ZFS native encryption which should come in 12) and so you should follow the geli(8) documentation about that. That said, after boot in the new system:

zpool create [I]tank geom[/I]
zpool import [I]tank[/I]
create the datasets and set the mount points.
zfs mount -a (usually not needed)
create the user(s).

Just that.

EDIT: ZFSTuningGuide
 
Back
Top