xref: /freebsd/stand/man/boot1.efi.8 (revision d7d962ead0b6e5e8a39202d0590022082bf5bfb6)
1.\"
2.\" Copyright (c) 2020 Netflix, Inc
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\"
13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.\" $FreeBSD$
26.\"
27.Dd April 6, 2021
28.Dt BOOT1.EFI 8
29.Os
30.Sh NAME
31.Nm boot1.efi
32.Nd UEFI chain loader
33.Sh DESCRIPTION
34.Nm
35has been deprecated and will be removed from a future release.
36.Xr loader.efi 8
37handles all its former use cases with more flexibility.
38.Pp
39On UEFI systems,
40.Nm
41loads
42.Pa /boot/loader.efi
43from the default root file system and transfers execution there.
44Some systems may need to use
45.Xr gptboot.efi 8
46when
47.Xr loader.efi 8
48cannot be used directly on the ESP (EFI System Partition).
49.Ss Initialization
50Before looking for the boot device,
51.Nm
52does the following initialization
53.Bl -bullet
54.It
55Sets up the console using the default UEFI console routines.
56.It
57Discovers all possible block devices on the system.
58.It
59Initializes all file system modules to read files from those devices
60.El
61.Ss Boot Device Selection
62.Nm
63uses the following sequence to determine the root file system for
64booting:
65.Bl -bullet
66.It
67If ZFS is configured,
68.Nm
69will search the for zpools that are bootable, preferring the zpool on
70the boot device over the others.
71.It
72If UFS is configured,
73.Nm
74will search all UFS partitions for a bootable partition.
75It will prefer the lowest numbered bootable partition on the boot
76device over all other choices.
77It will fall back to partitions on other devices if none are found.
78.El
79.Pp
80A partition is considered bootable if it can load
81.Pa /boot/loader.efi
82from it.
83Command line arguments to the next boot stage are
84read from the first existing file of
85.Pa /boot.config
86or
87.Pa /boot/config
88in that order.
89.Ss Caveats
90.Bl -bullet
91.It
92The order in which file systems are tried is undefined.
93.It
94No encryption support is available.
95.It
96There's no way to interrupt the boot process to select booting from some
97other location.
98.It
99When configuring a serial console for FreeBSD, but not for UEFI, no output
100will show up on the serial console from boot1.efi.
101.It
102There's no support for marking partitions as the preferred one.
103See
104.Xr gptboot.efi 8 .
105.It
106There's no support for boot-once functionality.
107See
108.Xr gptboot.efi 8 .
109.El
110