MKBOOT(8)

NAME
mkboot - install kernel image and make a system bootable

SYNOPSIS
mkboot [-fr root-dev] block-dev mkboot -M disk-dev [-partition-number OS-name]

DESCRIPTION
The command mkboot can only be used by the super-user.

mkboot, by default, puts a secondary booter at the first sector of a partition with xiafs file system specified by block-dev and installs a kernel image in the space reserved for it in the xiafs. The reserved space should be at least as big as the kernel image. For future kernel upgrade, 512KB reserved space for kernel image is recommanded for bootable hard disk partitions. mkboot, by default, changes the root device to block-dev. mkboot provides the secondary booter. The kernel image is read from the stardard input. The default can be changed by using following options.

OPTIONS
mkboot has the following options:

-f root-dev
    Force root-dev as root device

-r root-dev
    Install secondary booter and the kernel image on the raw device block-dev and use root-dev as root device. This option make the booter work with any file system. One may make a small partition for this purpose. 512KB is recommanded.

-M disk-dev
    If there are at least one -partition-number OS-name option, the mkboot installs the master booter, otherwise a traditional master booter is restored in the first sector of the first disk specified by disk-dev. The master booter is provided by mkboot. For the reason which will become clear soon, mkboot does not check if disk-dev is the first hard disk.

-partition-number OS-name
    Where, partition-number ranges from 1 to 4. This option is used with option -M disk-dev. This option specifies the bootable partition and its name one want to see in the menu displayed by the master booter during booting. One can specifies at most four bootable partitions. The name of the OS' can be as long as 15 charactors.

EXAMPLE
This example installs the secondary booter and the kernel image on the hda2, making /dev/hda2 as the root device.
# mkxfs -k 512 /dev/hda2 16000
# mkboot /dev/hda2 < zImage
This example installs the secondary booter and the kernel image on the raw hda2, making /dev/hdb1 as the root device. Note that contants of hda2 is over wrotten by the booter and the image since this is installing on the raw device.
# mkboot -r /dev/hdb1  /dev/hda2 < zImage
To install the master booter, additional care may be taken to avoid the possible disaster. First make a floppy to simulate the installation.
# dd if=/dev/hda of=/dev/fd0 bs=512 count=1
# mkboot  -M /dev/fd0  -2 "LINUX 0.99.7" -3 "LINUX 0.99.6" -1 MS-DOS
Then reboot the machine with the floppy in "drive A:". If it works, do it on hard drive.
# mkboot  -M /dev/hda  -2 "LINUX 0.99.7" -3 "OLD LINUX" -1 MS-DOS

AUTHOR
Q. Frank Xia (qx@math.columbia.edu)

SEE ALSO
mkxfs(8).