JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
System Administration Guide: Basic Administration     Oracle Solaris 11 Express 11/10
search filter icon
search icon

Document Information

Preface

1.  Managing User Accounts and Groups (Overview)

2.  Managing User Accounts and Groups (Tasks)

3.  Introduction to Shutting Down and Booting a System

4.  Shutting Down and Booting a System (Overview)

5.  Shutting Down a System (Tasks)

6.  Modifying Oracle Solaris Boot Behavior (Tasks)

7.  Booting an Oracle Solaris System (Tasks)

Booting a SPARC Based System (Task Map)

Booting a SPARC Based System

SPARC: How to Boot a System to Run Level 3 (Multiuser Level)

SPARC: How to Boot a System to Run Level S (Single-User Level)

SPARC: How to Boot a System Interactively

SPARC: How to Boot a Kernel Other Than the Default Kernel

SPARC: Booting From a Specified ZFS Root File System

SPARC: How to List Available Bootable Datasets Within a ZFS Root Pool

SPARC: How to Boot From a Specified ZFS Root File System

Booting a SPARC Based System From the Network

SPARC: How to Boot a System From the Network

Booting an x86 Based System (Task Map)

Booting an x86 Based System

x86: How to Boot a System to Run Level 3 (Multiuser)

x86: How to Boot a System to Run Level S (Single-User Level)

x86: How to Boot a System Interactively

x86: Booting From a Specified ZFS Root File System

x86: How to Display a List of the Available ZFS Boot Environments

x86: How to Boot From a Specified ZFS Root File System

Using Fast Reboot (Task Map)

Using Fast Reboot

How to Initiate a Fast Reboot of a SPARC Based System

How to Initiate a Fast Reboot of an x86 Based System

x86: How to Fast Reboot a System to the nth Entry in the GRUB menu.lst File

x86: Initiating a Fast Reboot of a System by Specifying an Alternate Boot Environment

Performing a Slow Reboot of a System

Managing the Boot Configuration Service

x86: Debugging Early Panics That Might Occur

x86: Troubleshooting Conditions That Might Prevent Fast Reboot From Working

Booting an x86 Based System from the Network

x86: About DHCP Macros

x86: How to Perform a GRUB Based Boot From the Network

8.  Troubleshooting Booting an Oracle Solaris System (Tasks)

9.  Managing the Oracle Solaris Boot Archives (Tasks)

10.  x86: GRUB Based Booting (Reference)

11.  Managing Services (Overview)

12.  Managing Services (Tasks)

Index

Booting an x86 Based System from the Network

This section describes the requirements and warnings for performing a GRUB based boot from the network.

Any system can boot from the network, if a boot server is available. You might need to boot a stand-alone system from the network for recovery purposes if the system cannot boot from the local disk. You can boot an x86 based system directly from a network that supports the PXE network boot protocol.


Note - The PXE network boot is available only for devices that implement the Intel Preboot Execution Environment specification.


The default network boot strategy that is used for a GRUB based PXE network boot is DHCP. For non-PXE devices, you can use either the DHCP or the RARP boot strategy. The strategy that you use depends on which type of boot server is available on your network. If no PXE or DHCP server is available, you can load GRUB from a diskette, a CD-ROM, or a local disk.

To perform a GRUB based network boot, a DHCP server that is configured for PXE clients is required. A boot server that provides tftp service is also required. The DHCP server supplies the information that the client needs to configure its network interface.

The DHCP server must be able to respond to the DHCP classes, PXEClient and GRUBClient with the following information:

The sequence for performing a PXE network boot of the Oracle Solaris OS is as follows:

  1. The BIOS is configured to boot from a network interface.

  2. The BIOS sends a DHCP request.

  3. The DHCP server replies with the server address and the name of the boot file.

  4. The BIOS downloads pxegrub by using tftp and executes pxegrub.

  5. The system downloads a GRUB menu file by using tftp.

    This file displays the boot menu entries that are available.

  6. After you select a menu entry, the system begins to load the Oracle Solaris OS.

See How to Set Up a Network Configuration Server in System Administration Guide: IP Services for more information.

Running the installadm command creates the /tftpboot_01ethernet-address file. This file is linked to pxegrub and the/tftpboot/menu.lst.01ethernet-address file. The /tftpboot/menu.lst.01ethernet-address file is the GRUB menu file. If this file does not exist, then pxegrub reverts to using DHCP Option 150, if this option is specified, or the /tftpboot/boot/grub/menu.lst file. Typically, a single system is set up to serve both functions. In this instance, the installadm command sets up the /tftpboot file with the correct pxegrub menu file and the Oracle Solaris files. DHCP service is handled separately by using the installadm command. The setup only needs to be completed once per client. See x86: About DHCP Macros and x86: How to Perform a GRUB Based Boot From the Network for more information.

x86: About DHCP Macros

When you use the installadm client-create command to add clients on the install server, the command reports DHCP configuration information to standard output. You can use this information when you create the options and macros that are needed to pass network installation information to clients.

To install DHCP clients with a DHCP server over the network, you must create DHCP options. This information is needed to install the Oracle Solaris OS.

When a client sends a DHCP request, the server must have the following client information:

The DHCP server forms a response. This response is based on the following macros, which matches the client request:

class macro

The class macro is based on a class string that is contained in the DHCP request. On x86 based systems, the BIOS already makes a DHCP request with the class PXEClient:Arch:00000:UNDI:002001. If a macro by this name is defined in the DHCP server configuration, then the macro content is sent to the x86 based clients.

network macro

The network macro is named by the IP address of the subnet that the client resides on. If the macro 129.146.87.0 is defined on the DHPC server, the macro content is sent to all clients on that subnet. The macro content is sent, regardless of the class of the request. If an option is defined in both the class macro and the network macro, the network macro takes precedence.

IP macro

The IP macro is named by an IP address. This macro is rarely used.

client macro

The client macro is named by the client type (01 for Ethernet) and the MAC address of the client, in uppercase letters. For a client with the Ethernet address 0:0:39:fc:f2:ef, the corresponding macro name is 01000039FCEF. Note the absence of colons in the client macro.

For example, for a client on the subnet 192.168.100.0, with the Ethernet address 0:0:39:fc:f2:ef, making a DHCP request of class PXEClient, the DHCP server has the following matching macro:

PXEClient
    BootSrvA:  192.168.100.0
    BootFile:  pxegrub
  129.146.87.0
    Router:    129.146.87.1
    NISdmain:  sunsoft.eng.sun.com
  01000039FCEF
    BootFile:  01000039FCEF
The actual DHCP response will be
    BootSrvA:  192.168.100.0
    BootFile:  01000039FCEF
    Router:    129.146.87.1
    NISdmain:  sunsoft.eng.sun.com

Note that the BootFile in the client macro overrides the BootFile in the class macro.

For more detailed information, see Chapter 6, Setting Up DHCP for AI, in Oracle Solaris 11 Express Automated Installer Guide.

x86: How to Perform a GRUB Based Boot From the Network

To perform a GRUB based network boot, a DHCP server that is configured for PXE clients is required. A boot server that provides tftp service is also required. The DHCP server must be able respond to the DHCP classes, PXEClient and GRUBClient, to obtain the IP address of the file server and the boot file (pxegrub). By default, the menu file is /tftpboot/menu.lst.01ethernet-address. If this file does not exist, then pxegrub reverts to DHCP Option 150, if this option is specified, or the /tftpboot/boot/grub/menu.lst file.

If you are booting the system from the Solaris software media, the system boots automatically.

Before You Begin

Before performing a network boot on an x86 based system with GRUB, do the following:

For more information, see Oracle Solaris 11 Express Automated Installer Guide.

  1. On the DHCP server, create a client macro for the DHCP service with the following two options:
    • BootSrvA: svr-addr

    • BootFile: client-macro

      Note that you must have superuser privileges on the DHCP server to run the dhtadm command.

      where svr-addr is the IP address of the server, and client-macro is named by the client's Ethernet type (01) and the MAC address, in uppercase letters. This number is also the name of the file that is used in the /tftpboot directory on the installation server.


      Note - The notation for the client-macro should not contain any colons.


      You can create the client macro from the DHCP GUI or from command-line interface.

      To create the client macro from the command-line, type:

      # dhtadm -[MA] -m client macro -d ":BootFile=client-macro:BootSrvA=svr-addr:"
  2. Reboot the system.
  3. Instruct the BIOS to boot from the network.
    • If your system uses a specific keystroke sequence to boot from the network, type the keystrokes when the BIOS screen is displayed.
    • If you need to manually modify the BIOS settings to boot from the network, type the keystroke sequence to access the BIOS setup utility. Then, modify the boot priority to boot from the network.
  4. When the GRUB menu is displayed, select the network installation image that you want to install.