FreeBSD 13-RELEASE install forgest SSD-based ZFS volume

Scott Gasch scott at
Thu Apr 15 14:34:09 UTC 2021

Thanks.  It's as you say: when I rebooted with the 13.0 kernel and the 12.2
userland the /var mountpoint (and /home, and /root, and /usr/src, etc...)
sit on the zssd pool which has disappeared.  The system comes up but my
home directory is gone and so is root's.  I can login but the missing pool
means I can't finish upgrading userland to 13.0.

My first instinct was to restore /home which is when I found that creating
the missing pool anew does not survive a reboot in this state.  Apparently
creating an ssd based mirror (or stripe, or single provider pool) with 12.2
zpool and creating some volumes on it with 12.2 zfs then rebooting the
machine causes the newly created pool to vanish again.

I'm considering mounting /var on the HDD zfs pool temporarily and trying to
freebsd-update -r 13.0-RELEASE upgrade again so that I can get userland to
13.0 on the hope that, in that configuration, I'll be able to finish the
update and then maybe restore the missing data from backups.

Thanks for any ideas and suggestions, much appreciated.


On Thu, Apr 15, 2021 at 6:35 AM andrew clarke <mail at> wrote:

> On 2021-04-14 22:55:43, Scott Gasch (scott.gasch at wrote:
> > I'm trying to upgrade a system from 12.2 to 13.0.  The system has two ZFS
> > volumes: z and zssd.  The former is a mirror set based on spinning
> platter
> > disks and the latter is a mirror set based on two ssd devices.
> >
> > I've gotten as far as installing the new kernel and rebooting at which
> > point the system is screwed up because, on boot, zssd no longer exists.
> > Note: the kernel is 13.0 while userland is still 12.2 at this point.
> My experience upgrading to 13.0 was similar, but resolved itself after
> upgrading userland and rebooting:
> I have two ZFS pools (both mirrors): zroot and tank. FreeBSD boots from
> zroot.
> I upgraded from 12.2 to 13.0 with "freebsd-update upgrade -r
> 13.0-RELEASE", ran
> "freebsd-update install" then rebooted to load the 13.0 kernel. At this
> point
> userland was still at 12.2, and tank was missing from "zpool status". Only
> zroot was visible.
> I didn't try to import tank manually.
> After running "freebsd-update install" a second time to install 13.0
> userland
> and rebooting again, FreeBSD 13.0 booted from zroot and both it and tank
> was
> visible once more with "zpool status", and from there it was business as
> usual.
> I imagine I'd have been a bit stuck if /var/db/freebsd-update/ happened to
> be a
> symlink to a location on the "tank" pool, because freebsd-update wouldn't
> be
> able to complete the upgrade. But that wasn't the case, and spreading
> the base system over multiple pools seems unwise anyway.
> I don't know if any of this is helpful. If not you'll need to elaborate on
> "the system is screwed up".

More information about the freebsd-questions mailing list