[BACK]Return to boot.8 CVS log [TXT][DIR] Up to [local] / sys / arch / i386 / stand / boot

Annotation of sys/arch/i386/stand/boot/boot.8, Revision 1.1.1.1

1.1       nbrk        1: .\"    $OpenBSD: boot.8,v 1.47 2007/05/31 19:20:03 jmc Exp $
                      2: .\"
                      3: .\" Copyright (c) 1997-2001 Michael Shalayeff
                      4: .\" All rights reserved.
                      5: .\"
                      6: .\" Redistribution and use in source and binary forms, with or without
                      7: .\" modification, are permitted provided that the following conditions
                      8: .\" are met:
                      9: .\" 1. Redistributions of source code must retain the above copyright
                     10: .\"    notice, this list of conditions and the following disclaimer.
                     11: .\" 2. Redistributions in binary form must reproduce the above copyright
                     12: .\"    notice, this list of conditions and the following disclaimer in the
                     13: .\"    documentation and/or other materials provided with the distribution.
                     14: .\"
                     15: .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
                     16: .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
                     17: .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
                     18: .\" IN NO EVENT SHALL THE AUTHOR OR HIS RELATIVES BE LIABLE FOR ANY DIRECT,
                     19: .\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
                     20: .\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
                     21: .\" SERVICES; LOSS OF MIND, USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     22: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
                     23: .\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
                     24: .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
                     25: .\" THE POSSIBILITY OF SUCH DAMAGE.
                     26: .\"
                     27: .\"
                     28: .Dd $Mdocdate: May 31 2007 $
                     29: .Dt BOOT 8 i386
                     30: .Os
                     31: .Sh NAME
                     32: .Nm boot ,
                     33: .Nm boot.conf
                     34: .Nd
                     35: i386-specific second-stage bootstrap
                     36: .Sh DESCRIPTION
                     37: The main purpose of this program is to load the system kernel while dealing
                     38: with the downfalls of the PC BIOS architecture.
                     39: .Pp
                     40: As described in
                     41: .Xr boot_i386 8 ,
                     42: this program is loaded by the
                     43: .Xr biosboot 8
                     44: primary bootstrap loader and provides a convenient way to load the kernel.
                     45: This program acts as an enhanced boot monitor for PC systems, providing
                     46: a common interface for the kernel to start from.
                     47: .Pp
                     48: Basic operations include:
                     49: .Pp
                     50: .Bl -bullet -compact
                     51: .It
                     52: Detecting and switching between multiple consoles.
                     53: .It
                     54: Loading kernels from any device supported by your system BIOS.
                     55: .It
                     56: Loading kernels compressed by
                     57: .Xr gzip 1 .
                     58: .It
                     59: Passing system parameters queried from the BIOS to the kernel.
                     60: .It
                     61: Providing an interactive command line.
                     62: .El
                     63: .Pp
                     64: The sequence of its operation is as follows: initialization,
                     65: parsing the configuration file, then an interactive command line.
                     66: While at the command line you have 5 seconds to type any commands, if needed.
                     67: If time expires, the kernel will be loaded according to
                     68: the current variable settings (see the
                     69: .Nm set
                     70: command).
                     71: Each time a kernel load fails, the timeout is increased by one second.
                     72: The sequence of
                     73: .Nm
                     74: operations is as follows:
                     75: .Bl -enum
                     76: .It
                     77: Set up a protected mode environment which catches and reports processor
                     78: exceptions and provides a simple protected-mode BIOS interface.
                     79: .It
                     80: Probe for console devices, which includes the (default) PC VGA+Keyboard
                     81: console
                     82: .Pq Li pc0
                     83: and up to four serial consoles
                     84: .Pf ( Li com0
                     85: through
                     86: .Li com3 )
                     87: connected to the serial ports.
                     88: Display messages to the default console about the devices found.
                     89: .It
                     90: Detect memory.
                     91: Conventional memory is detected by querying the BIOS.
                     92: Extended memory is detected by probing page-by-page through the address
                     93: space, rather than asking the BIOS; many BIOS's cannot report larger than
                     94: 64M of memory.
                     95: All memory found is reported to the default console device.
                     96: .It
                     97: Probe for APM support in the BIOS.
                     98: Display a message if support is present.
                     99: .It
                    100: If the file
                    101: .Pa /etc/boot.conf
                    102: exists on the filesystem
                    103: .Nm
                    104: was loaded from, open and parse it.
                    105: This file may contain any commands
                    106: .Nm
                    107: accepts at the interactive prompt.
                    108: Though default settings usually suffice, they can be changed here.
                    109: .Pp
                    110: .Pa boot.conf
                    111: processing can be skipped by holding down either Control key as
                    112: .Nm
                    113: starts.
                    114: .It
                    115: The header line
                    116: .Pp
                    117: .Dl >> OpenBSD/i386 BOOT [x.xx]
                    118: .Pp
                    119: is displayed to the active console, where
                    120: .Ar x.xx
                    121: is the version number of the
                    122: .Nm
                    123: program, followed by the
                    124: .Pp
                    125: .Dl boot>
                    126: .Pp
                    127: prompt, which means you are in interactive mode and may enter commands.
                    128: If you do not,
                    129: .Nm
                    130: will proceed to load the kernel with the current parameters after the
                    131: timeout period has expired.
                    132: .El
                    133: .Pp
                    134: By default,
                    135: .Nm
                    136: attempts to load the kernel executable
                    137: .Pa /bsd .
                    138: If it fails to find the kernel and no alternative kernel image has
                    139: been specified, the system will be unable to boot.
                    140: .Sh COMMANDS
                    141: The following commands are accepted at the
                    142: .Nm
                    143: prompt:
                    144: .Bl -tag -width shorten
                    145: .It boot Op Ar image Op Fl acds
                    146: Boots the kernel image specified by
                    147: .Ar image
                    148: with any options given.
                    149: Image specification consists of a pair
                    150: .Ar device : Ns Ar filename ;
                    151: either or both can be omitted (`:' is not needed if both are omitted),
                    152: in which case values from
                    153: .Nm
                    154: variables will be used.
                    155: .Pp
                    156: When selecting the
                    157: .Ar device
                    158: to boot from,
                    159: .Nm
                    160: makes no distinction between SCSI and IDE type drives;
                    161: they are detected as
                    162: .Sq hd
                    163: devices.
                    164: Therefore, to boot kernel
                    165: .Pa /bsd
                    166: from slice
                    167: .Sq a
                    168: on the first hard drive
                    169: .Pq irrespective of device type ,
                    170: specify
                    171: .Dq boot hd0a:/bsd .
                    172: .Bl -tag -width _a_
                    173: .It Fl a
                    174: Causes the kernel to ask for the
                    175: .Nm root
                    176: device to use.
                    177: .It Fl c
                    178: Causes the kernel to go into
                    179: .Xr boot_config 8
                    180: before performing
                    181: .Xr autoconf 4
                    182: procedures.
                    183: .It Fl d
                    184: Causes the kernel to drop into
                    185: .Xr ddb 4
                    186: at the earliest convenient point.
                    187: .It Fl s
                    188: Causes the kernel to boot single-user.
                    189: .El
                    190: .It echo Op Ar args
                    191: Displays
                    192: .Ar args
                    193: on the console device.
                    194: .It help
                    195: Prints a list of available commands and machine dependent
                    196: commands, if any.
                    197: .It machine Op Ar command
                    198: Issues machine-dependent commands.
                    199: These are defined for i386 architecture:
                    200: .Bl -tag -width diskinfo
                    201: .It Nm diskinfo
                    202: Prints a list of hard disks installed on your system including:
                    203: BIOS device number, and the BIOS geometry.
                    204: .It Nm memory
                    205: If used without any arguments, this command will print out
                    206: the memory configuration as determined through BIOS routines.
                    207: Otherwise the arguments specify how to modify the
                    208: memory configuration.
                    209: They take the form of:
                    210: .Pp
                    211: .Dl [+-]<size>@<address>
                    212: .Pp
                    213: Meaning to add(+) or exempt(-) the amount of memory specified by
                    214: .Ar <size>
                    215: at the location specified by
                    216: .Ar <address> .
                    217: Both size and base address can be specified as octal,
                    218: decimal, or hexadecimal numbers, as accepted by the
                    219: .Xr strtoul 3
                    220: routine.
                    221: .Pp
                    222: Memory segments are not required to be adjacent to each other;
                    223: the only requirement is that there is real physical memory under
                    224: the range added.
                    225: The following example
                    226: adds 32M of memory right after the first 16M:
                    227: .Bd -unfilled -offset indent
                    228: machine mem +0x2000000@0x1000000
                    229: .Ed
                    230: .Pp
                    231: Another useful command is to withdraw a range
                    232: of memory from OS usage (it may have been wrongfully reported as
                    233: useful by the BIOS).
                    234: This example
                    235: effectively excludes the 15\(en16M range from the map of useful memory:
                    236: .Bd -unfilled -offset indent
                    237: machine mem -0x100000@0xf00000
                    238: .Ed
                    239: .It Nm regs
                    240: Prints contents of processor registers if compiled with
                    241: .Em DEBUG .
                    242: .El
                    243: .It ls Op Ar directory
                    244: Prints contents of the specified
                    245: .Ar directory
                    246: in long format including: attributes and file type, owner, group,
                    247: size, filename.
                    248: .It reboot
                    249: Reboots the machine by initiating a warm boot procedure.
                    250: .It set Op Ar varname Op Ar value
                    251: If invoked without arguments, prints a list of variables and their values.
                    252: If only
                    253: .Ar varname
                    254: is specified, displays contents of that variable.
                    255: If
                    256: .Ar varname
                    257: and
                    258: .Ar value
                    259: are both specified, sets that variable to the given value.
                    260: Variables include:
                    261: .Pp
                    262: .Bl -tag -compact -width boothow
                    263: .It Nm addr
                    264: Address at which to load the kernel.
                    265: .It Nm debug
                    266: Debug flag if
                    267: .Nm
                    268: was compiled with DEBUG defined.
                    269: .It Nm device
                    270: Boot device name (e.g.,
                    271: .Li fd0a ,
                    272: .Li hd0a ) .
                    273: .It Nm howto
                    274: Options to pass to the loaded kernel.
                    275: .It Nm image
                    276: File name containing the kernel image.
                    277: .It Nm timeout
                    278: Number of seconds boot will wait for human intervention before
                    279: booting the default kernel image.
                    280: .It Nm tty
                    281: Active console device name (e.g.,
                    282: .Li com0 ,
                    283: .Li com1 ,
                    284: .Li pc0 ) .
                    285: .El
                    286: .It stty Op Ar device Op Ar speed
                    287: Displays or sets the
                    288: .Ar speed
                    289: for a console
                    290: .Ar device .
                    291: If changing the baudrate for the currently active console,
                    292: .Nm
                    293: offers you five seconds of grace time before committing the change
                    294: to allow you to change your terminal's speed to match.
                    295: If changing speed
                    296: .Em not
                    297: for the active console, the baudrate is set for the
                    298: .Em next
                    299: time you switch to a serial console.
                    300: The baudrate value is not used for the
                    301: .Li pc0
                    302: console.
                    303: .Pp
                    304: The default baudrate is 9600bps.
                    305: .It time
                    306: Displays system time and date.
                    307: .El
                    308: .Sh FILES
                    309: .Bl -tag -width /usr/mdec/biosbootxx -compact
                    310: .It Pa /usr/mdec/biosboot
                    311: first stage bootstrap
                    312: .It Pa /usr/mdec/pxeboot
                    313: PXE bootstrap
                    314: .It Pa /boot
                    315: system bootstrap
                    316: .It Pa /etc/boot.conf
                    317: system bootstrap's startup file
                    318: .It Pa /bsd
                    319: kernel image
                    320: .It Pa /bsd.mp
                    321: kernel image for multiprocessor machines
                    322: .It Pa /bsd.rd
                    323: kernel image for installation/recovery
                    324: .El
                    325: .Sh EXAMPLES
                    326: Boot the default kernel:
                    327: .Pp
                    328: .Dl boot> boot
                    329: .Pp
                    330: Remove the 5 second pause at boot-time permanently, causing
                    331: .Nm
                    332: to load the kernel immediately without prompting:
                    333: .Pp
                    334: .Dl # echo \&"boot\&" > /etc/boot.conf
                    335: .Pp
                    336: Use serial console.
                    337: A null modem cable should connect the specified serial port to a terminal.
                    338: Useful for debugging.
                    339: .Pp
                    340: .Dl boot> set tty com0
                    341: .Pp
                    342: Invoke the serial console at every boot:
                    343: .Pp
                    344: .Dl # echo \&"set tty com0\&" > /etc/boot.conf
                    345: .Pp
                    346: Boot the kernel named
                    347: .Pa /bsd
                    348: from the second hard disk in
                    349: .Dq User Kernel Configuration
                    350: mode (see
                    351: .Xr boot_config 8 ) .
                    352: This mechanism allows for the explicit enabling and disabling of devices
                    353: during the current boot sequence, as well as the modification
                    354: of device parameters.
                    355: Once booted, such changes can be made permanent by using
                    356: .Xr config 8 Ns 's
                    357: .Fl e
                    358: option.
                    359: .Pp
                    360: .Dl boot> boot hd1a:/bsd -c
                    361: .Sh SEE ALSO
                    362: .Xr gzip 1 ,
                    363: .Xr autoconf 4 ,
                    364: .Xr ddb 4 ,
                    365: .Xr biosboot 8 ,
                    366: .Xr boot_config 8 ,
                    367: .Xr boot_i386 8 ,
                    368: .Xr fdisk 8 ,
                    369: .Xr installboot 8 ,
                    370: .Xr pxeboot 8 ,
                    371: .Xr reboot 8
                    372: .Pp
                    373: RFC 1950 describes the zlib library interface.
                    374: .Pp
                    375: The official home page for the version of zlib used in this
                    376: operating system is at http://www.gzip.org/zlib/.
                    377: .Sh HISTORY
                    378: This program was written by Michael Shalayeff for
                    379: .Ox 2.1 .

CVSweb