INSTALLBOOT(8) | Maintenance Commands and Procedures | INSTALLBOOT(8) |
installboot
—
install bootloader in a disk partition
installboot |
[-fn ] [-F
zfs|ufs|hsfs]
[-u verstr]
bootblk raw-device |
installboot |
[-enV ] -F
zfs -i
raw-device | file |
installboot |
[-n ] -F
zfs -M
raw-device attach-raw-device |
installboot |
[-fFmn ] [-b
boot_dir] [-u
verstr] [stage1 stage2]
raw-device |
installboot |
[-enV ] -i
raw-device | file |
installboot |
[-n ] -M
raw-device attach-raw-device |
The boot(8) boot program is loaded from disk and is responsible of loading kernel and its support files from specific file system.
The SPARC systems have one boot loader program file to be
installed on the boot area of a disk slice. As the SPARC zfs boot loader is
too large to fit into boot area at the start of the disk slice,
installboot
command will split the zfs boot loader
between disk slice boot area, and zfs pool boot area.
The x86 BIOS systems have boot loader implemented as three stages:
installboot
command will record the location of
stage2 to stage1, which is always
installed at least on partition (MBR or GPT) boot area, making it possible
to boot via chainload from other boot loaders.
When installboot
command is used with
the -m
option,
installboot
installs the stage1 file on the
master boot sector of the disk as well.
In case of GPT partitioning scheme, if the file system to boot from is either UFS or PCFS, there must be boot partition defined to store stage2 boot program. This is needed because UFS and PCFS do not have sufficient space reserved to store boot programs.
The boot partition must use following GPT UUID:
6a82cb45-1dd2-11b2-99a6-080020736631
which is provided by "boot" tag in format(8) partition menu.
The x86 UEFI systems load and start boot loader program from /EFI/Boot directory of the EFI System Partition (ESP). The boot loader program in ESP is named bootx64.efi for AMD64 system and bootia32.efi for i386 system. Note, only a 64-bit kernel is supported, even on i386 systems. The bootia32.efi boot program is only provided to support systems with 32-bit UEFI firmware, but which can support 64-bit mode.
The bootx64.efi is copied from /boot/loader64.efi and bootia32.efi is copied from /boot/loader32.efi.
The installboot
command accepts the
following options:
-b
boot_dirinstallboot
will automatically pick the needed
programs and will install to the specified disk device.-h
-m
-f
-n
-F
-u
verstr-i
-e
-V
-M
The installboot
command accepts the
following operands:
# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk \ /dev/rdsk/c0t0d0s0
# installboot -m /boot/pmbr /boot/gptzfsboot /dev/rdsk/c0t0d0s0
attributes(7), boot(8), bootadm(8), fdisk(8), fmthard(8), format(8), kernel(8)
Installing stage1 on the master boot sector
(-m
option) overrides any boot loader currently
installed on the machine. The system will always boot the current OS
partition regardless of which fdisk partition is active.
If version string indicates the source boot loader might be more
recent, installboot
will also verify md5 checksums
to determine if update is really necessary. If checksums match, the install
will not be performed.
October 16, 2021 | OmniOS |