Previous: tftp.txt Next: partition.txt The "bootme" forth script is a sort of preboot stage of the proper boot process, since it is written in the native language of OF and merely serves as a switch for our purposes. When we boot MacOS, it points OF to load a boot kernel for macos from the hard disc. The string "hd:,\\:tbxi" in forth OF syntax can be interpreted as "hard drive:default-partition,\\(t)he(b)lessed e(x)ecutable(i)mage" or something to that effect. This is a not a document about MacOS, so we won't examine that any further. When we boot linux, we could just feed a kernel image with default boot arguments set at compile time, but this would not give us the full range of flexibility possible with linux. Thus we use a bootstage before the booting of the kernel which is the reason for the yaboot program. "Yaboot is an OpenFirmware ELF executable that bootstraps the Linux kernel." (man yaboot) I had to debug yaboot and submit patches to the upstream maintainer in order to make it work properly in the context we are using it (over tftp). Fortunately these patches were considered and the ideas implemented, the problems fixed, in the very next release of yaboot, so you gentle reader need not worry about patching yaboot. This should be philosophical point to you however regarding the nature of open source development. It can only progress if you contribute. We use yaboot to switch between booting a preinstalled linux partition, or booting an initrd image which we use to install linux on the partition in the first place. See /usr/src/linux/Documentation/initrd.txt for more info on initrd. When "bootme" points to "../bootlinux", the bootlinux forth script instructs OF to load yaboot via tftp from 192.168.2.1 (our "master" server) and yaboot in turn uses the same IP to load its config file "yaboot.conf" via tftp. Yaboot.conf then specifies the linux kernel image, again retrieved via tftp to "master", and also the linux root device. This can be either the preinstalled linux partition, or a ramdisk filesystem derived from initrd.gz also transferred via tftp. See tftp.txt for info on yaboot.conf naming policy when used in conjunction with apache/cgi. See partition.txt for info on the local partition policy.