ZFS - gptzfsboot really doesn't work as expected. What am I missing?
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 04 Mar 2025 13:07:55 UTC
I'm pushing the boundaries of ZFS and have got into a position where the system is trying to boot from a drive that's in the middle of a resilver. I can cure this by shuffling the drives around so it picks a different one. However, if I don't I get a boot prompt: ---------------- BIOS drive C: is disk0 BIOS drive D: is disk1 BIOS drive E: is disk2 <snip> Can't find boot/zfsloader Can't find /boot/loader Can't find /boot/kernel/kernel FreeBSD/x86 boot Default: disk-1:/boot/kernel/kernel boot: Can't find /boot/kernel/kernel FreeBSD/x86 boot Default: disk-1:/boot/kernel/kernel boot: ---------------- There is NOTHING I can type to get out of this. I assume zfs:zroot/ROOT/current:/boot/zfsloader would be appropriate but it doesn't say this when I go back and RTFM. It defaults to trying to load disk-1:/boot/kernel/kernel, which is bonkers. I'm seriously wondering if the installer has dropped the wrong code there. The FM says of gptzfsboot: --- Normally gptzfsboot will boot in fully automatic mode. However, like boot(8), it is possible to interrupt the automatic boot process and in- teract with gptzfsboot through a prompt. gptzfsboot accepts all the options that boot(8) supports. --- In my experience today, it accepts NONE of the options that boot supports! I think I ought to be able to type a '?' and get a directory and so on. Does anyone have an explanation? Is there some proper documentation for this or am I going to have to reverse-engineer the source? Thanks, Frank.