diff options
author | Jerry Jelinek <jerry.jelinek@joyent.com> | 2016-09-26 13:27:55 +0000 |
---|---|---|
committer | Jerry Jelinek <jerry.jelinek@joyent.com> | 2016-09-26 13:27:55 +0000 |
commit | 0264fb65b613e5b2c44f273fa48b26bebe491074 (patch) | |
tree | a375b79dd7543bcf0571578b2189d37168c37c57 /usr/src/man/man1m/installboot.1m | |
parent | d21e83058c8edeb1becd9202380d088cb056f0c4 (diff) | |
parent | f76886de6cd6914424d9f6c25bd9d93d87889269 (diff) | |
download | illumos-joyent-0264fb65b613e5b2c44f273fa48b26bebe491074.tar.gz |
[illumos-gate merge]
commit f76886de6cd6914424d9f6c25bd9d93d87889269
7402 Create tunable to ignore hole_birth feature
commit 5bdf86e2a288d6c81a0bcc50a98699f52557bab6
7401 loader.4th is missing newline
commit ed4e7a6a5cbc5e8986dc649ad54435210487b102
7340 receive manual origin should override automatic origin
commit b021ac0b78f8df3d9c421783d9a323723df84925
7337 inherit_001_pos occasionally times out
commit c166b69d29138aed7a415fe7cef698e54c6ae945
7254 ztest failed assertion in ztest_dataset_dirobj_verify: dirobjs + 1 == usedobjs
commit 754998c8d410b7b7ddefbfa4de310a030e0c7ce1
7253 ztest failure: dsl_destroy_head(name) == 0 (0x10 == 0x0), file ../ztest.c, line 3235
commit 4220fdc152e5dfec9a1dd51452175295f3684689
7398 zfs test zfs_get_005_neg does not work as expected
commit d5f26ad8122c3762fb16413a17bfb497db86a782
5142 libzfs support raidz root pool (loader project)
commit c8811bd3e2427dddbac6c05a59cfe117d8fea370
5120 zfs should allow large block/gzip/raidz boot pool (loader project)
commit 12e3fba22ec759e9dd8f9564fad79541275b2aa5
6709 manual pages need to be updated for loader (loader project)
commit fa0c327afe484fa5ff164fb81ff93715dd6573f8
6706 disable grub menu management in bootadm (loader project)
6707 disable grub menu management in libbe (loader project)
commit 9abc7a578aecf9064f46563361e8f856b4bdc35e
6705 halt: replace grub_get_boot_args with be_get_boot_args (loader project)
commit a6424c753d6e2f0f04fb65b11e9f9c04445ccbae
6704 svc.startd: replace grub_get_boot_args with be_get_boot_args (loader project)
commit c262cbbc8301f7c884fd4800056ee51ba75d931c
6703 update bootadm to support loader configuration (loader project)
6708 update eeprom for loader (loader project)
commit ce3cb817f67103796b730fd322174dddefd9a9a8
6702 libbe should support x86 installboot command (loader project)
commit 0c946d80993858b7b1314e0b31773e48500e03fb
6701 add installboot to i386 platform (loader project)
commit 1386b601c0c7f5c89a9325b8a1e34037304e8119
6700 remove installboot script from i386 platform (loader project)
commit f5e5a2c4965aa1013184568ca3140cdcba93e44b
6699 be_get_boot_args interface implementation in libbe (loader project)
commit 199767f8919635c4928607450d9e0abb932109ce
5061 freebsd boot loader integration (loader project)
commit 0cc5983c8a077e6396dc7c492ee928b40bf0fed1
6698 freebsd btxld port for illumos (loader project)
commit afc2ba1deb75b323afde536f2dd18bcafdaa308d
6185 want ficl scripting engine in illumos (loader project)
Conflicts:
exception_lists/cstyle
exception_lists/hdrchk
exception_lists/copyright
Diffstat (limited to 'usr/src/man/man1m/installboot.1m')
-rw-r--r-- | usr/src/man/man1m/installboot.1m | 209 |
1 files changed, 209 insertions, 0 deletions
diff --git a/usr/src/man/man1m/installboot.1m b/usr/src/man/man1m/installboot.1m new file mode 100644 index 0000000000..92ff24a277 --- /dev/null +++ b/usr/src/man/man1m/installboot.1m @@ -0,0 +1,209 @@ +.\" +.\" This file and its contents are supplied under the terms of the +.\" Common Development and Distribution License ("CDDL"), version 1.0. +.\" You may only use this file in accordance with the terms of version +.\" 1.0 of the CDDL. +.\" +.\" A full copy of the text of the CDDL should have accompanied this +.\" source. A copy of the CDDL is also available via the Internet at +.\" http://www.illumos.org/license/CDDL. +.\" +.\" +.\" Copyright 2016 Toomas Soome <tsoome@me.com> +.\" +.Dd February 10, 2016 +.Dt INSTALLBOOT 1M +.Os +.Sh NAME +.Nm installboot +.Nd install bootloader in a disk partition +.Sh SYNOPSIS +.Ss SPARC +.Nm +.Op Fl fn +.Op Fl F Sy zfs Ns | Ns Sy ufs Ns | Ns Sy hsfs +.Op Fl u Ar verstr +.Ar bootblk raw-device +.Nm +.Op Fl enV +.Fl F Sy zfs +.Fl i +.Ar raw-device +.Nm +.Op Fl n +.Fl F Sy zfs +.Fl M +.Ar raw-device attach-raw-device +.Ss x86 +.Nm +.Op Fl fFmn +.Op Fl u Ar verstr +.Ar stage1 stage2 raw-device +.Nm +.Op Fl enV +.Fl i +.Ar raw-device +.Nm +.Op Fl n +.Fl M +.Ar raw-device attach-raw-device +.Sh DESCRIPTION +The +.Xr boot 1M +boot program is loaded from disk and is responsible of loading kernel and its +support files from specific file system. +.Pp +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, +.Nm +command will split the zfs boot loader between disk slice boot area, and zfs +pool boot area. +.Pp +The x86 systems have boot loader implemented as three stages: +.Bl -tag -width Ds +.It Sy stage1 +.Pa /boot/pmbr +is used as master boot record +.Pq MBR +and partition boot program. +.It Sy stage2 +.Pa /boot/gptzfsboot +is responsible for loading files from file system. The +.Sy stage2 +on x86 systems is always installed to zfs pool boot area, and therefore only zfs +boot is supported. +.Nm +command will record the location of +.Sy stage2 +to +.Sy stage1 , +which is always installed at least on partition +.Pq MBR or GPT +boot area, making it possible to boot via chainload from other boot loaders. +.Pp +When +.Nm +command is used with the +.Fl m +option, +.Nm +installs the stage1 file on the master boot sector of the disk as well. +.It Sy stage3 +.Pa /boot/zfsloader +is read from file system and executed by +.Sy stage2 +and will provide boot loader user environment and is responsible of loading +and starting the operating system kernel. +.Pp +In case of GPT partitioning scheme, if the file system to boot from is either +UFS or PCFS, there must be +.Sy 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. +.Pp +The boot partition must use following GPT UUID: +.Bd -literal -offset indent +6a82cb45-1dd2-11b2-99a6-080020736631 +.Ed +.Pp +which is provided by +.Qq boot +tag in +.Xr format 1M +partition menu. +.El +.Ss Options +The +.Nm +command accepts the following options: +.Bl -tag -width Ds +.It Fl h +Prints short usage message. +.It Fl m +Installs +.Sy stage1 +on the master boot sector interactively. You must use this option if OS is +installed on an extended FDISK or an EFI/GPT partition. +.It Fl f +Suppresses interaction when overwriting the master boot sector on x86. +Force update on SPARC. +.It Fl n +Dry run session. Will not write to disk. +.It Fl F +On SPARC, specify file system type. On x86, inhibit version check and enforce +boot loader update. +.It Fl u Ar verstr +Specify custom version string. Can be used to add version on non-versioned +boot loader or change built in version string. +.It Fl i +Print version string from installed boot loader. +.It Fl e +Print version string from installed boot loader without description. +.It Fl V +Print version string from installed boot loader with full description. +.It Fl M +Mirror boot loader from installed disk partition. +.El +.Ss Operands +The +.Nm +command accepts the following operands: +.Bl -tag -width Ds +.It Ar bootblk +The name of the SPARC boot loader code. +.It Ar stage1 +The name of the loader stage 1 file. +.It Ar stage2 +The name of the loader stage 2 file. +.It Ar raw-device +The name of the device onto which bootloader code is to be installed. It must be +a character device that is readable and writable and part of boot pool. +.El +.Sh FILES +.Bl -tag -width Ds +.It Pa /boot +Directory where x86 loader files reside. +.It Pa /usr/platform/platform name/lib/fs +Directory where SPARC boot loader files reside. +.El +.Sh EXAMPLES +.Bl -tag -width Ds +.It Sy Example 1 No Installing zfs boot loader on SPARC disk slice +The following command installs zfs boot loader on SPARC system: +.Bd -literal +# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk \e + /dev/rdsk/c0t0d0s0 +.Ed +.It Sy Example 2 No Installing boot loader on x86 system +The following command installs loader stage files and master boot record: +.Bd -literal +# installboot -m /boot/pmbr /boot/gptzfsboot /dev/rdsk/c0t0d0s0 +.Ed +.El +.Sh INTERFACE STABILITY +.Sy Uncommitted +.Sh SEE ALSO +.Xr boot 1M , +.Xr bootadm 1M , +.Xr fdisk 1M , +.Xr fmthard 1M , +.Xr format 1M , +.Xr kernel 1M , +.Xr attributes 5 +.Sh WARNINGS +Installing +.Sy stage1 +on the master boot sector +.Po +.Fl m +option +.Pc +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. +.Pp +If version string indicates the source boot loader might be more recent, +.Nm +will also verify md5 checksums to determine if update is really necessary. If +checksums match, the install will not be performed. |