Up until this now, I have mostly used Linux (and Windows (more Linux than Windows)) and I have a good grasp of how to make sure that Linux uses the desired root device in the face of attaching/detaching storage devices and the non-deterministic way in which it assigns names to storage devices. By passing
From what I can tell, FreeBSD does not have a kernel command line, but it still has boot arguments. I have thus far seen that it may be passed to the kernel with
root=UUID=
, root=LABEL=
, root=PARTLABEL=
, or root=PARTUUID=
followed by, respectively, the filesystem UUID, filesystem label, partition label, or partition UUID as a kernel command line parameter, the same root filesystem will be selected every time (assuming there are no other partitions/filesystems present with the same UUID/label).From what I can tell, FreeBSD does not have a kernel command line, but it still has boot arguments. I have thus far seen that it may be passed to the kernel with
set kFreeBSD.vfs.root.mountfrom=...
in GRUB and the configuration variable currdev
/rootdev
when using loader
/loader.efi
. In each case, how would I write the value so that the kernel selects the value based on partition UUID, partition label, filesystem label, and filesystem UUID?