install a bootstrap on an FFS
installboot prepares an FFS filesystem
partition for boot-strapping from the PROM. The sparc bootblocks are split
into two parts: a small first-stage program that is written into the
superblock area in a partition (and hence is limited in size to SBSIZE -
DEV_BSIZE bytes), and a second-stage program that resides in the filesystem
proper. The first-stage program is loaded into memory by the PROM. After it
receives control, it loads the second stage program from a set of filesystem
block numbers that have been hard-coded into it by the
installboot program. The second-stage boot program
uses the device driver interface to the PROM and the stand-alone filesystem
code in “libsa.a” to locate and load the kernel. The
second-stage boot program and the prototype code for the first-stage
bootprogram can be found in /usr/mdec/boot and
/usr/mdec/bootxx respectively. The second-stage
program commonly resides in the root directory as
/boot. The utility
/usr/mdec/binstall can be used to properly copy the
second-stage bootprogram to its destination. This script takes care of
post-processing that is required on non-Openboot machines.
The options are as follows:
- Set the machine architecture. The argument karch can
be one of “sun4”, “sun4c” or
“sun4m”. Sun 4c models with Openboot PROMs need the header
to be present, while Sun 4 systems with the “old monitor”
interface require the header to be stripped off. This is normally taken
care of by
installbootautomatically, but it's useful when preparing a bootable filesystem for another system.
- Leave the a.out header on the installed bootxx
program. This option has been superseded by the
- Do not actually write anything on the disk.
- Verbose mode.
The arguments are:
- The name of the second-stage boot program in the file system where the first-stage boot program is to be installed.
- The name of the prototype file for the first stage boot program.
- The name of the raw device in which the first-stage boot program is to be installed. This should correspond to the block device on which the file system containing boot is mounted.
The following command will install the first-stage bootblocks in the root filesystem (assumed to be mounted on “sd0a”) using the file /boot as the second-level boot program:
# installboot /boot /usr/mdec/bootxx /dev/rsd0a
installboot first appeared in