9BOOT(8) 9BOOT(8)
NAME
9bootfat, 9bootiso, 9bootpxe - PC bootloader for FAT, ISO
and PXE network booting
SYNOPSIS
Started by PC BIOS or chainloaded by partition bootsector
DESCRIPTION
9boot is the bootloader used on PCs to start the Plan 9
kernel. Its task is to read and parse the plan9.ini(8) con-
figuration file, gather some basic system information like
the amount of usable system memory, do some basic system
initialization and load the kernel from the boot media into
memory.
After reading the configuration, the loader will automati-
cally attempt to boot the kernel that was specified by the
bootfile= parameter. If there is no such parameter, a key
gets pressed on the keyboard or the kernel file was not
found then the loader enters the interactive boot console.
The syntax of the boot console is the same as in the
plan9.ini(8) file. The word clear [ prefix ] can be used
to remove parameters from the current configuration. If a
prefix is specified, the first parameter that matches the
prefix is removed. If the prefix argument is omitted, the
whole configuration will be reset. If the word wait appears
in the configuration then 9boot will return to the console
prompt after processing the file.
The word boot will end the console and resume booting the
kernel.
There are many ways to boot a PC so 9boot was split into a
number of distinct programs one for each boot method.
FAT BOOTING
When booting Plan 9 from a harddisk or USB pen drive, a
FAT16/32 partition (9fat) is used to store the kernel and
plan9.ini(8) configuration. Due to size limitations, instead
of loading the kernel directly, the bootsector (pbs) of the
FAT partition loads a 2nd stage bootloader (9bootfat) from
the root directory of the filesystem.
CD-ROM BOOTING
Booting from CD-ROM requires only the 9bootiso bootloader to
be included in the ISO-9660 image under 386/9bootiso, set as
a non-emulation bootblock (see mk9660(8)). Boot parameters
are read from cfg/plan9.ini.
Page 1 Plan 9 (printed 5/20/12)
9BOOT(8) 9BOOT(8)
NETWORK BOOTING
With a PXE capable BIOS and network card one can download
9bootpxe and boot the kernel from a TFTP server (see
dhcpd(8) and ndb(6) for details). Once started, 9bootpxe
will read the file /cfg/pxe/$ether from the tftp server,
where $ether is the MAC address of the client's network card
in lower case hex, and use this as its plan9.ini(8) file.
FILES
/386/pbs
/386/9bootfat
/386/9bootiso
/386/9bootpxe
SOURCE
/sys/src/boot/pc
SEE ALSO
plan9.ini(8)
Page 2 Plan 9 (printed 5/20/12)