1 .\" Copyright (c) 1991, 1993
2 .\" The Regents of the University of California. All rights reserved.
4 .\" This code is derived from software written and contributed
5 .\" to Berkeley by William Jolitz.
7 .\" Almost completely rewritten for FreeBSD 2.1 by Joerg Wunsch.
9 .\" Substantially revised for FreeBSD 3.1 by Robert Nordier.
11 .\" Redistribution and use in source and binary forms, with or without
12 .\" modification, are permitted provided that the following conditions
14 .\" 1. Redistributions of source code must retain the above copyright
15 .\" notice, this list of conditions and the following disclaimer.
16 .\" 2. Redistributions in binary form must reproduce the above copyright
17 .\" notice, this list of conditions and the following disclaimer in the
18 .\" documentation and/or other materials provided with the distribution.
19 .\" 3. Neither the name of the University nor the names of its contributors
20 .\" may be used to endorse or promote products derived from this software
21 .\" without specific prior written permission.
23 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35 .\" @(#)boot_i386.8 8.2 (Berkeley) 4/19/94
42 .Nd system bootstrapping procedures
44 .Sy Power fail and crash recovery .
45 Normally, the system will reboot itself at power-up or after crashes.
46 An automatic consistency check of the file systems will be performed,
47 and unless this fails, the system will resume multi-user operations.
50 Most i386 PCs attempt to boot first from floppy disk drive 0 (sometimes
51 known as drive A:) and, failing that, from hard disk drive 0 (sometimes
52 known as drive C:, or as drive 0x80 to the BIOS).
54 you to change this default sequence, and may also include a CD-ROM
55 drive as a boot device.
57 Some newer PCs boot using UEFI firmware, not BIOS.
58 That process is described
62 A three-stage bootstrap is employed.
63 Control is passed from the boot blocks (bootstrap stages one and two) to a
64 third-stage bootstrap program,
66 This third stage provides more sophisticated control over the booting
67 process than it is possible to achieve in the boot blocks, which are
68 constrained by occupying limited fixed space on a given disk or slice.
70 The remainder of this subsection deals only with the boot blocks.
73 program is documented separately.
75 After the boot blocks have been loaded,
76 you should see a prompt similar to the following:
79 Default: 0:ad(0,a)/boot/loader
83 The automatic boot will attempt to load
87 of either the floppy or the hard disk.
88 This boot may be aborted by typing any character on the keyboard
92 At this time, the following input will be accepted:
93 .Bl -tag -width indent
95 Give a short listing of the files in the root directory of the default
96 boot device, as a hint about available boot files.
99 may also be specified as the last segment of a path, in which case
100 the listing will be of the relevant subdirectory.)
103 .Ar bios_drive : interface ( unit , Oo Ar slice , Oc Ar part )
106 .Op Fl aCcDdghmnPprsv
109 Specify boot file and flags.
110 .Bl -tag -width indent
112 The drive number as recognized by the BIOS.
113 0 for the first drive, 1 for the second drive, etc.
115 The type of controller to boot from.
116 Note that the controller is required
117 to have BIOS support since the BIOS services are used to load the
120 The supported interfaces are:
122 .Bl -tag -width "adXX" -compact
124 ST506, IDE, ESDI, RLL disks on a WD100[2367] or lookalike
127 5 1/4" or 3 1/2" High density floppies
129 SCSI disk on any supported SCSI controller
134 The unit number of the drive on the interface being used.
135 0 for the first drive, 1 for the second drive, etc.
136 .It Oo Ar slice , Oc Ns Ar part
137 The partition letter inside the
142 By convention, only partition
144 contains a bootable image.
145 If sliced disks are used
146 .Pq Dq fdisk partitions ,
149 (1 for the first slice, 2 for the second slice, etc.\&)
150 can be booted from, with the default (if not specified) being the active slice
151 or, otherwise, the first
156 is specified as 0, the first
160 slice) is booted from.
162 The pathname of the file to boot (relative to the root directory
163 on the specified partition).
165 .Pa /boot/kernel/kernel .
166 Symbolic links are not supported (hard links are).
167 .It Xo Op Fl aCcDdghmnPpqrsv
172 .Bl -tag -width "-CXX" -compact
174 during kernel initialization,
175 ask for the device to mount as the root file system.
177 try to mount root file system from a CD-ROM.
179 this flag is currently a no-op.
181 boot with the dual console configuration.
183 configuration, the console will be either the internal display
184 or the serial port, depending on the state of the
187 In the dual console configuration,
188 both the internal display and the serial port will become the console
189 at the same time, regardless of the state of the
193 enter the DDB kernel debugger
196 as early as possible in kernel initialization.
198 use the GDB remote debugging protocol.
200 force the serial console.
201 For instance, if you boot from the internal console,
204 option to force the kernel to use the serial port as its
207 mute the console to suppress all kernel console input and output during the
210 ignore key press to interrupt boot before
215 If no keyboard is found, the
219 options are automatically set.
221 pause after each attached device during the device probing phase.
224 do not write anything to the console unless automatic boot fails or
226 This option only affects second-stage bootstrap,
227 to prevent next stages from writing to the console use in
232 use the statically configured default for the device containing the
236 Normally, the root file system is on the device
237 that the kernel was loaded from.
239 boot into single-user mode; if the console is marked as
243 the root password must be entered.
245 set the speed of the serial console to
247 The default is 9600 unless it has been overridden by setting
248 .Va BOOT_COMCONSOLE_SPEED
251 and recompiling and reinstalling the boot blocks.
253 be verbose during device probing (and later).
260 file to set the default configuration options for the boot block code.
263 for more information about the
267 .Bl -tag -width /boot/loader -compact
269 parameters for the boot blocks (optional)
271 first stage bootstrap file
273 second stage bootstrap file
275 third stage bootstrap
276 .It Pa /boot/kernel/kernel
278 .It Pa /boot/kernel.old/kernel
279 typical non-default kernel (optional)
282 When disk-related errors occur, these are reported by the second-stage
283 bootstrap using the same error codes returned by the BIOS, for example
284 .Dq Disk error 0x1 (lba=0x12345678) .
285 Here is a partial list of these error codes:
287 .Bl -tag -width "0x80" -compact
291 Address mark not found
297 DMA attempt across 64K boundary
301 Uncorrectable CRC/ECC error
311 On older machines, or otherwise where EDD support (disk packet
312 interface support) is not available, all boot-related files and
313 structures (including the kernel) that need to be accessed during the
314 boot phase must reside on the disk at or below cylinder 1023 (as the
315 BIOS understands the geometry).
318 is reported by the second-stage bootstrap, it generally means that this
319 requirement has not been adhered to.
342 The bsdlabel format used by this version of
345 different from that of other architectures.
347 Due to space constraints, the keyboard probe initiated by the
349 option is simply a test that the BIOS has detected an
354 keyboard (with no F11 and F12 keys, etc.) is attached, the probe will