aboutsummaryrefslogtreecommitdiff
path: root/sbin/geom
diff options
context:
space:
mode:
authorWarren Block <wblock@FreeBSD.org>2013-01-25 16:33:00 +0000
committerWarren Block <wblock@FreeBSD.org>2013-01-25 16:33:00 +0000
commit0e0d13226c9b4a5d115a5404102c4182f3842dd3 (patch)
treeede25f7a188bf68ab1c9db6269d0ed3746725bb1 /sbin/geom
parenta89a2c8ba4048d7253e5efadf6d8f8d0aa85e19f (diff)
downloadsrc-0e0d13226c9b4a5d115a5404102c4182f3842dd3.tar.gz
src-0e0d13226c9b4a5d115a5404102c4182f3842dd3.zip
Expand description of how gptboot and gptzfsboot choose a partition for
booting. Reviewed by: ae MFC after: 1 week
Notes
Notes: svn path=/head/; revision=245910
Diffstat (limited to 'sbin/geom')
-rw-r--r--sbin/geom/class/part/gpart.839
1 files changed, 28 insertions, 11 deletions
diff --git a/sbin/geom/class/part/gpart.8 b/sbin/geom/class/part/gpart.8
index 61f8275f8436..8843e5324954 100644
--- a/sbin/geom/class/part/gpart.8
+++ b/sbin/geom/class/part/gpart.8
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd January 3, 2013
+.Dd January 25, 2013
.Dt GPART 8
.Os
.Sh NAME
@@ -807,34 +807,51 @@ Both types of bootstrap code are used to boot from the GUID Partition Table.
First, a protective MBR is embedded into the first disk sector from the
.Pa /boot/pmbr
image.
-It searches the GPT
+It searches through the GPT for a
.Cm freebsd-boot
partition (see the
.Sx "PARTITION TYPES"
-section) in the GPT and runs the next bootstrap stage from it.
+section) and runs the next bootstrap stage from it.
The
.Cm freebsd-boot
partition should be smaller than 545 KB.
+It can be located either before or after other
+.Fx
+partitions on the disk.
There are two variants of bootstrap code to write to this partition:
.Pa /boot/gptboot
and
.Pa /boot/gptzfsboot .
.Pa /boot/gptboot
is used to boot from UFS.
-It searches
+It searches through
+.Cm freebsd-ufs
+partitions in the GPT and boots from the first one with the
+.Cm bootonce
+attribute set.
+If that attribute is not found,
+.Pa /boot/gptboot
+boots from the first
.Cm freebsd-ufs
-GPT partitions and starts
+partition with the
+.Cm bootme
+attribute set.
+If neither attribute is found,
+.Pa /boot/gptboot
+boots from the first
+.Cm freebsd-ufs
+partition.
.Pa /boot/loader
.Pq the third bootstrap stage
-if found.
-The
+is loaded from the first partition that matches these conditions.
.Pa /boot/gptzfsboot
is used to boot from ZFS.
-It searches
+It searches through the GPT for
.Cm freebsd-zfs
-GPT partitions and starts
+partitions, trying to detect ZFS pools.
+After all pools are detected,
.Pa /boot/zfsloader
-if found.
+is started from the first one found.
.Pp
The VTOC8 scheme does not support embedding bootstrap code.
Instead, the 8 KBytes bootstrap code image
@@ -945,7 +962,7 @@ The GEOM PART class can detect the same partition table visible through
different GEOM providers, and some of them will be marked as corrupt.
Be careful when choosing a provider for recovery.
If you choose incorrectly you can destroy the metadata of another GEOM class,
-e.g.\& GEOM MIRROR or GEOM LABEL.
+e.g.,\& GEOM MIRROR or GEOM LABEL.
.Sh SYSCTL VARIABLES
The following
.Xr sysctl 8