Skip Navigation Links | |
Exit Print View | |
Booting and Shutting Down Oracle Solaris 11.1 Systems Oracle Solaris 11.1 Information Library |
1. Booting and Shutting Down a System (Overview)
2. x86: Administering the GRand Unified Bootloader (Tasks)
x86: Description of the GRUB 2 Configuration
x86: GRUB 2 Partition and Device Naming Scheme
x86: GRUB 2 and GRUB Legacy Task Comparison
x86: Upgrading Your GRUB Legacy System to a Release That Supports GRUB 2
x86: How to Upgrade Your GRUB Legacy System to a Release That Supports GRUB 2
x86: How GRUB Legacy Menu Entries Are Migrated to GRUB 2
x86: Maintaining GRUB 2 and GRUB Legacy Boot Environments on the Same System
x86: Administering the GRUB Configuration by Using the bootadm Command
x86: How to List GRUB Menu Entries
x86: How to Manually Regenerate the GRUB Menu
x86: How to Maintain the GRUB Menu
x86: How to Set Attributes for a Specified Boot Entry in the GRUB Menu
x86: How to Add a Boot Entry to the GRUB Menu
x86: How to Remove a Boot Entry From the GRUB Menu
x86: Adding Kernel Arguments by Editing the GRUB Menu at Boot Time
x86: Adding -B prop=val Kernel Arguments at Boot Time by Editing the GRUB Menu
x86: Customizing the GRUB Configuration
x86: Advanced GRUB Administration and Troubleshooting
x86: Installing GRUB 2 by Using the bootadm install-bootloader Command
x86: How to Install the Boot Loader
x86: How to Install the Boot Loader After Restoring a Root Pool
x86: How to Install GRUB in a Location Other Than the Default Location
x86: Installing GRUB Legacy on a System That Has GRUB 2 Installed
x86: How to Install GRUB Legacy on a System That Has GRUB 2 Installed
3. Shutting Down a System (Tasks)
5. Booting a System From the Network (Tasks)
On x86 platforms, you can set boot attributes and kernel arguments for a specific boot entry by editing the GRUB menu at boot time. These changes persist until the next time the system is booted.
To permanently set boot attributes for a specific boot entry, use the bootadm command with the change-entry subcommand. See x86: How to Set Attributes for a Specified Boot Entry in the GRUB Menu.
When you boot an x86 based system the GRUB main menu is displayed. This menu contains a list of all of the boot entries that are currently on the system. To edit a specific boot entry, use the arrow keys to select the entry, then type e to edit the entry. In the GRUB edit screen, navigate to the $multiboot line, then type the additional boot option or kernel argument at the end of the line.
The $multiboot line in the GRUB edit menu might look similar to the following:
$multiboot /ROOT/transition/@/$kern $kern -B console=graphics -B $zfs_bootfs
For example, to disable the e1000g network driver and load kmdb at boot time, you would edit the GRUB menu for the specified entry, as follows:
$multiboot /ROOT/solaris/@/$kern $kern -B disable-e1000g=true -k -B $zfs_bootfs
To exit the GRUB edit menu and boot the entry you just edited, press Control-X. If you have a system with UEFI firmware, and you are not using a serial console, pressing F10 also boots the entry.
Note - If you plan to edit the GRUB menu at boot time, you must reboot the system by using the -p option of the reboot command to ensure that the GRUB menu is displayed during the boot sequence.
The following kernel arguments and options can be specified when you edit the GRUB menu at boot time:
Specifies the kernel to boot.
Prompts the user for configuration information.
Specifies an alternative executable as the primordial process. altinit is a valid path to an executable.
Boots the system with the kernel debugger enabled
Controls the boot behavior of the Service Management Facility (SMF)
There are two categories of options: recovery options and messages options.
Specifies a reconfiguration boot.
The system probes all attached hardware devices and then assigns nodes in the file system to represent only those devices that are actually found.
Boots the system to a single-user state.
Boots the system with verbose messages enabled.
Note - When parameters are specified by using the eeprom utility and on the GRUB command line, the GRUB command line takes precedence.
For more information, see the kernel(1M) man page.
You can specify certain kernel arguments at boot time, for example, setting the Oracle Solaris system console, by specifying -B prop=val options. The following are the various ways in which you can modify boot parameters on x86 platforms at boot time by adding -B prop=val options to a specified boot entry:
Disables the Advanced Configuration and Power Interface (ACPI) enumeration of devices.
Disables ACPI entirely.
Specifies to use VGA text mode for booting. See Redirecting the Oracle Solaris Console at Boot Time.
Specifies that the console use graphics mode for booting, which enables a high-resolution state.
Specifies that the console use text mode for booting, which enables a high-resolution state.
Specifies the number of rows and columns of the frame buffer console. The most appropriate font for the selected number of rows or columns is automatically detected by the system. This option is used to optimize the frame buffer console size.
Redirects the console to ttya.
Redirects the console to ttya and disables the ACPI enumeration of devices.
Disables the use of UEFI runtime services in Oracle Solaris.
For more information, see the boot(1M) man page.
Example 2-10 Configuring Text Mode Boot Parameters for the Oracle Solaris System Console
In text mode, the console output is sent to the frame buffer, and input is received from the keyboard. A variant of text mode, the graphics mode displays an image with an animation until either a key is pressed or console interaction is required by the console login, sulogin, or kmdb command. A new property of text, console=force-text, directs the system to not use a VGA adapter as a bitmap device and sets the adapter to VGA text mode.
Note that setting the console=force-text property for the console will not transition the VGA adapter to text mode on systems with UEFI firmware.
When this property is not present, the console device reverts to the device that is specified by the input-device and output-device property pair. When neither the console property, nor the input-device and output-device property pair are present, the console defaults to the frame buffer and keyboard.
The following example shows how to specify the -B console=force-text property on the kernel command line at boot time:
-B console=force-text
Example 2-11 Enabling a Graphical Display and Configuring Console Text Mode Parameters
By default, the console text mode is 80 columns by 24 rows. To reconfigure this parameter, use the -B option with the screen-#columns=value and screen-#rows=value parameters.
For example, the following parameters can be specified on the kernel command line to enable a graphical display and allocate a console terminal of 100 columns by 60 rows:
-B console=graphics,screen-#columns=100,screen-#rows=60
Oracle Solaris 11 supports higher resolution and color depth on x86 based systems than the older Video Graphics Array (VGA) 640-480 16-color console. This support is provided for systems that use UEFI firmware and traditional BIOS firmware with Video Electronics Standards Association (VESA) option read-only memory (ROM). Note that support is limited to when a graphics card or frame buffer is used as a physical or virtual console. There is no impact on the behavior of serial consoles.
To support this feature, two command-line -B option=val parameters are available:
Specifies to use VGA text mode for booting.
Specifies the number of rows and columns of the frame buffer console. The most appropriate font for the selected number of rows or columns is automatically detected by the system. This option is used to optimize the frame buffer console size.
Oracle Solaris boot entries will attempt a specific set of graphics modes in a particular order. These modes are listed in the set gfxpayload line that follows the $multiboot line in the grub.cfg file. You can alter this line if you desire a mode that is not listed. To make this change persistent, you must copy the entry to the custom.cfg file. Otherwise, the next time the grub.cfg file is autogenerated, the gfxpayload setting is overwritten.
The syntax for the set gfxpayload argument is as follows:
WidthxHeight[xbit-depth]
The “x” is the actual character, for example:
set gfxpayload=1024x768;1280x1024x32
This setting means that GRUB will first attempt to locate the 1024x768 mode, in any bit depth (higher bit depths are preferred), then it will attempt to locate 1280x1024, in a 32-bit depth. The special keyword, text, chooses the text mode. It should be noted that this keyword might not work on UEFI firmware. The keep keyword specifies that the mode that GRUB is using, if a graphical console type is in use, should be maintained and used by Oracle Solaris as its frame buffer console resolution.