Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Mar 2015 16:09:44 +1100
From:      Jason Birch <jbirch@jbirch.net>
To:        "freebsd-questions@freebsd.org" <freebsd-questions@freebsd.org>
Subject:   Possible (or smart) to put freebsd-boot on USB stick for root-on-ZFS?
Message-ID:  <CAA=KUhvYfhJ9i_CU6Lhni0EB03zjPMBpBHOHLJ92THVs2owZxw@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hey there,

I'm looking at a relatively old resource
(https://wiki.freebsd.org/RootOnZFS/GPTZFSBoot/9.0-RELEASE) about how
to run root on ZFS for 9.0, and I noticed the section on installing
the boot section to all drives that make up the root. In my setup,
I'll only be mirroring two SSDs on 10.1, but it made me consider the
possibility of having the freebsd-boot partition on a USB stick rather
than on each drive itself for basically the following reason:

Should an SSD die, I'd need to say "boot from this other device" to
get my system back up and running, do the original partitioning magic
on the replacement device, get that back into the vdev... Should the
USB stick die, I'd need to simply replace it with one that had the
same image (that is, only the boot partition), and `zpool replace` a
blank device (I won't have a swap partition).

However, I can think of some downsides as well - namely that the USB
stick is probably more likely to die than the SSDs, and that the image
on the USB stick will change over time (This gets mounted as /boot? or
am I mistaken here... This would plague the freebsd-boot on the SSDs
as well, with drift...)

Am I misinterpreting the point of freebsd-boot? Does /boot actually
end up living on the ZFS mount, and freebsd-boot just contains enough
information to read the kernel and other goodies required to bring up
a full system from a ZFS dataset? Is my thought to use a USB stick for
this partition a little thick or actually worth trying out?

JB



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAA=KUhvYfhJ9i_CU6Lhni0EB03zjPMBpBHOHLJ92THVs2owZxw>