Re: zfs boot error on mirrored drive

From: Miroslav Lachman <000.fbsd_at_quip.cz>
Date: Thu, 18 Apr 2024 14:04:57 UTC
On 18/04/2024 15:37, mike tancsa wrote:
> I have a strange bootup issue on a test box that I just updated from 11, 
> to 12 and now RELENG13.
> 
> Its a simple mirror. But if I boot up with ada0, I get an error and 
> cannot boot further. Where as if I boot up with ada1, I get some errors 
> and then proceeds to boot normally.
> 
> For one thing, I dont get where zbackup1 is coming from. The pool I boot 
> from is zroot ?!? Where would that reference be stored ? I think ada0 
> was part of another pool long ago (zbackup1).

[...]

> It looks like if I do just a
> 
> 0(nanobsd2)# zpool import
>     pool: zbackup1
>       id: 5819795054093255811
>    state: UNAVAIL
> status: The pool was last accessed by another system.
>   action: The pool cannot be imported due to damaged devices or data.
>     see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-EY
>   config:
> 
>          zbackup1                  UNAVAIL  insufficient replicas
>            raidz2-2                UNAVAIL  insufficient replicas
>              da5                   UNAVAIL  cannot open
>              mfisyspd8             UNAVAIL  cannot open
>              mfisyspd7             UNAVAIL  cannot open
>              mfisyspd6             UNAVAIL  cannot open
>              ada0                  UNAVAIL  cannot open
>              17460231907795801757  UNAVAIL  cannot open
> 0(nanobsd2)#
> 
> it thinks ada0 is/was part of an old pool.  How do I get rid of that 
> reference ?

I am not a ZFS expert but can this be stored in a /etc/zfs/zpool.cache? 
(or in a different path, I remember zpool.cache was stored somewhere 
else in older versions of FreeBSD, maybe /boot/zfs/zpool.cache)
You can try to delete zpool.cache (just rename so you can move it back), 
import and export should re-create it.

Kind regards
Miroslav Lachman