Sync usage with man page.
[netbsd-mini2440.git] / share / man / man8 / man8.i386 / mbr.8
blob155794fde53e012e5a39a7f281600361adda3138
1 .\"     $NetBSD: mbr.8,v 1.2 2003/07/16 12:06:07 wiz Exp $
2 .Dd January 20, 2008
3 .Dt MBR 8 i386
4 .Os
5 .Sh NAME
6 .Nm mbr ,
7 .Nm bootselect
8 .Nd Master Boot Record bootcode
9 .Sh DESCRIPTION
10 An IBM PC boots from a disk by loading its first sector and executing
11 the code in it.
12 For a hard disk, this first sector usually contains a table of
13 partitions present on the disk.
14 The first sector of a disk containing such
15 a table is called the Master Boot Record (MBR).
16 .Pp
17 The code present in the MBR will typically examine the partition
18 table, find the partition that is marked active, and boot from it.
19 Booting from a partition simply means loading the first sector in
20 that partition, and executing the code in it, as is done for the
21 MBR itself.
22 .Pp
23 .Nx
24 supplies serveral versions of the MBR bootcode:
25 .Bl -tag -width 20
26 .It Sy Normal boot code Pa /usr/mdec/mbr
27 This version has the same functionality as that supplied by DOS/Windows and
28 other operating systems: it picks the active partition and boots from it.
29 Its advantage over other, older MBRs, is that it can detect and use
30 extensions to the BIOS interface that will allow it to boot partitions
31 that cross or start beyond the 8 Gigabyte boundary.
32 .It Sy Bootselector Pa /usr/mdec/mbr_bootsel
33 The bootselecting MBR contains configurable code that will present
34 the user with a simple menu, allowing a choice between partitions to
35 boot from, and hard disks to boot from.
36 The choices and default settings can be configured through
37 .Xr fdisk 8 .
38 .It Sy Extended Bootselector Pa /usr/mdec/mbr_ext
39 The Extended Bootselecting MBR additionally allows
40 .Nx
41 to be loaded from an Extended partition.
42 It only supports systems whose BIOS supports the extensions to
43 boot partitions beyond the 8 Gigabyte boundary.
44 .It Sy Serial Bootselector Pa /usr/mdec/mbr_com0
45 This has the same features as
46 .Pa mbr_ext
47 but will read and write from the first serial port.
48 It assumes that the BIOS has initialised the baud rate.
49 .It Sy Serial Bootselector Pa /usr/mdec/mbr_com0_9600
50 This has the same features as
51 .Pa mbr_com0 .
52 Additionally it initialises the serial port to 9600 baud.
53 .El
54 .Pp
55 The rest of this manual page will discuss the bootselecting versions of
56 the MBR.
57 The configurable items of the bootselector are:
58 .Bl -tag -width Er
59 .It timeout
60 The number of seconds that the bootcode will wait for the user to
61 press a key, selecting a menu item.
62 Must be in the range 0-3600, or \-1 when it will wait forever.
63 .It default
64 The default partition or disk to boot from, should the timeout
65 expire.
66 .El
67 .Pp
68 The bootselector will output a menu of the
69 .Em bootmenu
70 names for each partition (as configured by
71 .Xr fdisk 8 ) .
72 The user can then select the partition
73 or drive to boot from via the keyboard.
74 .Pp
75 The numeric keys
76 .Sy 1
77 upwards will initiate a startup from the corresponding partition.
78 .Pp
79 Function keys
80 .Sy F1
81 through
82 .Sy F8
83 (keys
84 .Sy a
85 through
86 .Sy h
87 for the serial versions)
88 will boot from harddisks 0 through 7 (BIOS numbers 0x80 through 0x87).
89 Booting from a drive is simply done by reading the MBR of that
90 drive and executing it, so the bootcode present in the MBR of the
91 chosen drive determines which partition (if any) will be booted in
92 the end.
93 .Pp
94 The
95 .Sy Enter
96 key will cause the bootcode to find the active partition, and boot from it.
97 If no key is pressed, the (configurable) default selection is picked.
98 .Sh DIAGNOSTICS
99 The following error are detected:
100 .Bl -column Code "No active partition"
101 .It Em Code Ta Em "Text message" Ta Em Explanation
102 .It 1 Ta "No active partition" Ta
103 The MBR has a partition table without an active partition.
104 .It 2 Ta "Disk read error" Ta
105 There was an error reading the bootsector for the partition or
106 drive selected.
107 .It 3 Ta "No operating system" Ta
108 The bootsector was loaded successfully, but it was not valid (i.e.,
109 the magic number check failed, or it contained no code).
110 .It L Ta "Invalid CHS read" Ta
111 The boot partition cannot be read using a CHS read and the system BIOS
112 doesn't support LBA reads.
113 .It ? Ta "" Ta
114 Unknown key.
117 The standard boot code will output the text message and stop.
118 It may be necessary to reset to the system to continue.
120 The bootselect code will output 'Error \*[Lt]code\*[Gt]' and await further input.
121 .Sh SEE ALSO
122 .Xr boot 8 ,
123 .Xr disklabel 8 ,
124 .Xr fdisk 8 ,
125 .Xr installboot 8 ,
126 .Xr mbrlabel 8
127 .Sh BUGS
128 The bootselect code has constraints because of the limited amount of
129 space available.
130 The only way to be absolutely sure that a bootselector will always
131 fit on the disk when a partition table is used, is to make it small
132 enough to fit into the first sector (512 bytes, 404 excluding
133 the partition table and bootselect menu).
135 The error messages are necessarily terse.