FreeBSD 13-RELEASE install forgest SSD-based ZFS volume
Scott Gasch
scott.gasch at gmail.com
Thu Apr 15 20:31:24 UTC 2021
Thank you, Ireneusz. You're definitely right about this -- I just noticed
that on a different freebsd box I had already upgraded to 13.0 has a
similar problem. It's boot device is UFS but it has a ZFS pool that it
uses to host backups. That machine didn't see the ZFS pool until I
followed you zpool import at which point everything was fine.
I really wish I had know about that before killing my zssd pool on the
other machine so I wouldn't be waiting on the restores at this point. But
at least it gave me a chance to test out my backup strategy.
Thanks for the help, everyone. Much appreciated.
On Thu, Apr 15, 2021 at 11:19 AM Ireneusz Pluta/wp.pl <ipluta at wp.pl> wrote:
> W dniu 2021-04-15 o 16:33, Scott Gasch pisze:
> > 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.
> >
> > Scott
>
> from what you and the others say, what the system misses seem not to be an
> "SSD-based" pool, but
> just a pool(s) other than it boots from. And manual zpool import of a
> missing pool just works
> (zpool.cache format change?). So import it and proceed with
> `freebsd-update install` as usual.
>
> Also, it is probably worth noting the below change:
>
> [me at myhost:~/freebsd/git/src]{main}$ git log -U -1 --grep zpool.cache
> commit a784185078e566103b7f8abffc7c0a4a1e813eb1
> Author: Cy Schubert <cy at FreeBSD.org>
> Date: Thu Aug 27 14:33:46 2020 +0000
>
> /etc/zfs/zpool.cache is the preferred (and new) location of
> zpool.cache.
> Check for it first. Only use /boot/zfs/zpool.cache if the /etc/zfs
> version is not found and good.
>
> Reported by: avg
> Suggested by: avg, kevans
>
> Notes:
> svn path=/head/; revision=364867
>
> diff --git a/libexec/rc/rc.d/zpool b/libexec/rc/rc.d/zpool
> index 01028f8633ea..8aab58080a0a 100755
> --- a/libexec/rc/rc.d/zpool
> +++ b/libexec/rc/rc.d/zpool
> @@ -20,9 +20,9 @@ zpool_start()
> {
> local cachefile
>
> - for cachefile in /boot/zfs/zpool.cache /etc/zfs/zpool.cache; do
> + for cachefile in /etc/zfs/zpool.cache /boot/zfs/zpool.cache; do
> if [ -r $cachefile ]; then
> - zpool import -c $cachefile -a -N
> + zpool import -c $cachefile -a -N && break
> fi
> done
> }
>
>
> As I just practised on a vm machine, the /etc/zfs/zpool.cache installed by
> update seems to be a copy
> of the prior /boot/zfs/zpool.cache. But they slightly differ this is what
> diff of zdb dumps of both
> shows (however this is after full update, I missed a step to compare
> before userland update).
>
> $ diff -u zdb.0 zdb.1
> --- zdb.0 2021-04-15 20:04:59.296702000 +0200
> +++ zdb.1 2021-04-15 20:05:01.421878000 +0200
> @@ -2,10 +2,11 @@
> version: 5000
> name: 'z2'
> state: 0
> - txg: 4
> + txg: 165
> pool_guid: 2328267395261012403
> + errata: 0
> hostid: 1467704166
> - hostname: ''
> + hostname: 'v8'
> com.delphix:has_per_vdev_zaps
> vdev_children: 1
> vdev_tree:
> @@ -47,9 +48,9 @@
> version: 5000
> name: 'zroot'
> state: 0
> - txg: 2172637
> + txg: 2175239
> pool_guid: 686285197683857337
> - hostid: 1467704166
> + errata: 0
> hostname: 'v8'
> com.delphix:has_per_vdev_zaps
> vdev_children: 1
>
> Anyway, thank you guys for early adopting and giving me very useful
> pre-warning about what is going
> to happen when I start upgrading my production systems :-).
>
>
More information about the freebsd-questions
mailing list