How does one add a zpool name to either /etc/zfs/zpool.cache or /boot/zfs/zpool.cache ?

From: Dennis Clarke <dclarke_at_blastwave.org>
Date: Thu, 14 Aug 2025 18:55:11 UTC
After a reboot I have a zpool missing. I have to import it manually.

The script /etc/rc.d/zpool seems to be the culprit in that it
processes two zpool cache files :

t#
t# cat /etc/rc.d/zpool
#!/bin/sh
#
#

# PROVIDE: zpool
# REQUIRE: hostid disks
# BEFORE: mountcritlocal
# KEYWORD: nojail

. /etc/rc.subr

name="zpool"
desc="Import ZPOOLs"
rcvar="zfs_enable"
start_cmd="zpool_start"
required_modules="zfs"

zpool_start()
{
         local cachefile

         for cachefile in /etc/zfs/zpool.cache /boot/zfs/zpool.cache; do
                 if [ -r $cachefile ]; then
                         zpool import -c $cachefile -a -N
                         if [ $? -ne 0 ]; then
                                 echo "Import of zpool cache 
${cachefile} failed," \
                                     "will retry after root mount hold 
release"
                                 root_hold_wait
                                 zpool import -c $cachefile -a -N
                         fi
                         break
                 fi
         done
}

load_rc_config $name
run_rc_command "$1"
t#

However neither of those cache files seem to hold information about
anything other than the pool created during installation.

There is a cachefile property in a zpool but that vanishes after a
reboot.

So then .. whats the magic here?


-- 
--
Dennis Clarke
RISC-V/SPARC/PPC/ARM/CISC
UNIX and Linux spoken