YABOOT(8) System Manager's Manual YABOOT(8)
NAME
yaboot(5,8) - PowerMac OpenFirmware boot loader
SYNOPSIS
Yaboot is an OpenFirmware ELF executable that bootstraps the Linux ker-
nel.
DESCRIPTION
This manual page explains the yaboot(5,8) OpenFirmware boot loader.
yaboot(5,8) is not a Linux or MacOS executable file. Attempting to execute
yaboot(5,8) from a Linux shell will only result in(1,8) a Segmentation Fault.
yaboot(5,8) is meant to be executed only by OpenFirmware.
yaboot(5,8) is executed from OpenFirmare in(1,8) the following manner: boot
hd:2,yaboot(5,8) where hd: is the OpenFirmware path for the hard disk, and
the 2 is the partition number yaboot(5,8) is located on. In this example,
the hard disk path is actually an OpenFirmware alias which is present
on all NewWorld powermacs. It usually points to the internal ATA hard
disk. If you have a SCSI disk, then you might execute yaboot(5,8) with this
command: boot /pci@80000000/pci-bridge@d/ADPT,2930CU@2/@1:2,yaboot(5,8) This
path will vary depending on what kind of SCSI host(1,5) adapter you have.
For a more detailed explanation of OpenFirmware's [disgusting] paths,
see man(1,5,7) bootstrap(8). On IBM hardware yaboot(5,8) is directly copied to the
bootstrap(8) partition raw(3x,7,8,3x cbreak), without any filesystem. OpenFirmare will
boot from a type 0x41 PReP Boot parition marked bootable, this must
contain yaboot(5,8). On IBM hardware the config(1,5) file(1,n) is read(2,n,1 builtins) directly from
the root filesystem. On PowerMac hardware it must be present on the
bootstrap(8) partition but ybin(8) will take care of that.
Fortunately you do not normally have to execute yaboot(5,8) manually. If
you have partitioned your disk with a bootstrap(8) partition and used
ybin(8) to install yaboot(5,8) then you will not have to execute yaboot(5,8)
yourself. (If this does not work you can also set(7,n,1 builtins) the boot-device
variable in(1,8) OpenFirmware to have it boot automatically, see man(1,5,7) boot-
strap(8).)
Once yaboot(5,8) has been executed by OpenFirmware it will display a boot:
prompt where you may enter a label for a kernel image defined in(1,8)
yaboot.conf(5). If there is no kernel image defined in(1,8) yaboot.conf(5)
you can still boot an arbitrary image by specifying its absolute Open-
Firmware path, similar to the above commands for executing yaboot(5,8)
itself. Simply omit the boot command and enter only the pathname.
(See EXAMPLES below)
When booting an image (either as a predefined label or absolute path)
any arguments are passed to the image. For example: boot: linux
root=/dev/hda3 which would pass the argument root=/dev/hda3 to the ker-
nel.
yaboot(5,8) should preferably be installed on a dedicated bootstrap(8) par-
tition (type Apple_Bootstrap for PowerMacs, type 0x41 PReP Boot for IBM
hardware). This allows the partition to be modified in(1,8) such a way that
OpenFirmare will load(7,n) yaboot(5,8) or a boot menu(3x,n,n tk_menuSetFocus) automatically with a
default OF configuration. If yaboot(5,8) cannot be installed on a boot-
strap(8) partition it can be installed on the root of a MacOS boot par-
tition instead. yaboot(5,8) however should not be installed in(1,8) a subdirec-
tory of the MacOS filesystem as this is less(1,3) reliable and more diffi-
cult to execute from OpenFirmware. See the ybin(8) man(1,5,7) page for more
details on installing yaboot(5,8) (ybin(8) is a utility for installing
yaboot(5,8) with minimal difficulty).
The yaboot.conf(5) file(1,n) must be next to the yaboot(5,8) executable on the
bootstrap(8) partition. ybin(8) will take care of this.
OpenFirmware may be accessed by holding down the command, option, o, f
keys immediately upon power-up.
OpenFirmware's settings may be reset(1,7,1 tput) to default values by holding down
the command, option, p, r keys while cold booting.
If you have G4 hardware then your OpenFirmware may already have a
graphical boot selector built in. This selector can be accessed by
holding down the option key when booting the machine. You should see a
screen with buttons for each bootable partition. The current version(1,3,5)
(included with ybin(8) 0.13) of ofboot includes a badge icon, the but-
ton with a penguin icon is your bootstrap(8) partition. Thanks to
Nicholas Humfrey for creating the Badge icon.
The bootstrap(8) need not and should not be mounted anywhere on your
filesystem, especially not on top of /boot. Yaboot is able to load(7,n) the
kernels from the ext2fs root partition so that is where they should be
kept.
EXAMPLES
boot yaboot(5,8) from internal ATA disk, partition 2:
boot hd:2,yaboot(5,8)
boot yaboot(5,8) from partition 2 of a disk with SCSI ID 2 attached to a
Adaptec 2930 SCSI Host adapter (this is on a rev1 blue G3, it may vary
on other models):
boot /pci@80000000/pci-bridge@d/ADPT,2930CU@2/@2:2,yaboot(5,8)
boot a kernel image located on partition number 3 of internal ATA disk
(from yaboot(5,8)'s boot: prompt):
hd:3,/boot/vmlinux
boot a kernel image located on partition 3 of SCSI disk ID 2 on a
Adaptec 2930 Host adapter (from yaboot(5,8)'s boot: prompt):
/pci@80000000/pci-bridge@d/ADPT,2930CU@2/@2:3,/vmlinux
FILES
/etc/yaboot.conf - boot loader configuration file(1,n)
BUGS
OpenFirmware
AUTHORS
This man(1,5,7) page was written by Ethan Benson <erbenson@alaska.net>.
yaboot(5,8) was written by Benjamin Herrenschmidt <benh@kernel.crash-
ing.org>.
REPORTING BUGS
Bugs in(1,8) yaboot(5,8) should be reported to Ethan Benson <erbenson@alaska.net>
SEE ALSO
bootstrap(8), yaboot.conf(5), ybin(8).
GNU/Linux PowerPC 21 November 2001 YABOOT(8)