A P P E N D I X  D

Booting the Supplemental CD from a PXE Server

If you have Sun Fire X2100 Server that does not have a DVD drive, you can run the Pc-Check diagnostics and flash the BIOS from a Preboot Execution Environment (PXE) server.

Two boot images are available on the Supplemental CD:

The following topics are included in this section:


D.1 Setting up the Supplemental CD Image on the PXE Server

Consult your Linux vendor for instructions on setting up a PXE Server.

You will need the following to set up the PXE server using Red Hat:

Instructions for setting up the Red Hat kickstart server can be found in the system administration guides for Red Hat Enterprise Linux:

http://www.redhat.com/docs/manuals/enterprise/
RHEL-3-Manual/sysadmin-guide/

http://www.redhat.com/docs/manuals/enterprise/
RHEL-4-Manual/sysadmin-guide/

To set up the PXE server:

1. Log in as root (superuser) to the PXE server.

2. Determine the directory where the Red Hat image is installed on the PXE server.

The default directory for the PXE image is usually /tftpboot/linunx-install. The remainder of this procedure assumes that the PXE files have been installed in this directory.



Note - If your PXE files are not installed in the /tftpboot/linunx-install directory, modify the procedure as necessary.



3. Make a directory for the Sun Fire X2100 Server Supplemental CD contents.

# mkdir /tftpboot/linux-install/suppl_aq

4. Insert the Sun Fire X2100 Server Supplemental CD into the PXE server and copy the boot.img file located in the root directory of the CD to the new Sun Fire X2100 Server supplemental directory created in Step 3.

# cp /mnt/cdrom/boot.img /tftpboot/linux-install/suppl_aq

5. Download the MEMDISK kernel.

a. Go to the latest SYSLINUX project web site at:

http://www.kernel.org/pub/linux/utils/boot/syslinux/

b. Save the latest syslinux-version.zip file to your root directory.

Where version is the latest SYSLINUX project version. Version 3.11 is the latest version at the time of this writing.

6. Unzip the file:

For example:

# unzip syslinux-3.09.zip

7. Change to the memdisk directory.

For example:

# cd /syslinux-3.09/memdisk

8. Copy the memdisk kernel to the new Sun Fire X2100 Server Supplemental Directory created in Step 3.

For example:

# cp /syslinux-3.09/memdisk/memdisk /tftpboot/linux-install/suppl_aq

9. Edit the Boot Message Screen as follows:

a. Open the boot.msg file in a text editor.

For example:

# vi /tftpboot/linux-install/msgs/boot.msg

b. Add the following line after 0 -Local Machine.

suppl_aq - Sun Fire X2100 Server Supplemental CD

c. Save and close the boot.msg file.

10. Edit the default PXE Configuration file as follows:

a. Open the default file in a text editor.

For example:

# vi /tftpboot/linux-install/pxelinux.cfg/default

b. Add the following lines after the label0 section:

label suppl_aq
kernel suppl_aq/memdisk
append initrd=suppl_aq/boot.img

c. Save and close the default file.

11. Test the installation on the test machine.


D.2 Accessing the Supplemental CD From the Target Sun Fire X2100 Server

You will need the following to run diagnostics on a target Sun Fire X2100 Server:

1. Connect the Sun Fire X2100 Server to the same network as the PXE server.

2. Power on (or reboot) the Sun Fire X2100 Server.

3. Press the F12 key during POST.

4. The Boot Message Screen located on your PXE server at /tftpboot/linux-install/msgs/boot.msg displays on the screen.

5. Type suppl_aq at the prompt and press Return.

This allows the memdisk kernel and the bootable portion of the Supplemental CD to download over the network and into the memory of the test machine.

Once downloaded, the bootable portion of the Supplemental CD boots.

6. The main menu of the bootable portion of the Supplemental CD displays on the target Sun Fire X2100 Server.

7. You can now run the hardware diagnostics and/or update the System BIOS.

You can also update the BIOS using the procedure in Section D.3, Flashing System BIOS from a PXE Server.

See the Chapter 3 for information on running Pc-Check diagnostics software.


D.3 Flashing System BIOS from a PXE Server

The Supplemental CD includes a bootable pxe_flash image. After you copy the image to a PXE server, you can run the pxe_flash.sh script on the PXE server to flash (update) the BIOS for one or more systems.

The steps below are specifically written for a PXE server running Red Hat Linux Release 3 or 4.

D.3.1 Installing the pxe_flash Image on the PXE Server

1. Log in as root (superuser) to the PXE server.

2. Make a directory for the Sun Fire X2100 Server Supplemental CD contents.

# mkdir /pxe_flash

3. Insert the Sun Fire X2100 Server Supplemental CD into the PXE server and copy the files located in the /utilities/pxe_flash directory to the /pxe_flash directory.

# cp /utilities/pxe_flash /pxe_flash

4. Download the MEMDISK kernel.

a. Go to the latest SYSLINUX project web site at:

http://www.kernel.org/pub/linux/utils/boot/syslinux/

b. Download and save the latest syslinux-version.zip file to /pxe_flash.

Where version is the latest SYSLINUX project version. Version 3.36 is the latest version at the time of this writing.

5. Unzip the syslinux-version.zip file. For example:

# unzip syslinux-3.11.zip

6. Change to the memdisk directory. For example:

# cd /pxe_flash/syslinux-3.11/memdisk

7. Copy the memdisk kernel to the /pxe_flash directory. For example:

# cp /pxe_flash/syslinux-3.11/memdisk/memdisk /pxe_flash

8. Edit /pxe_flash/input_file to include the system information and the commands you want executed on one or more target systems. For example:


# Sys MAC Addr

00:E0:81:55:XX:XX

00:E0:81:55:XX:XX

Mgmt IP Addr

129.129.129.129

129.129.129.129

Commands

pxe_flash_bios

power_status


where:

Command options are single parameter commands (the command option is the single parameter). You can issue multiple commands to each target system. Simply put a space between the commands.

For example, we can modify the input_file above to read as follows:


# Sys MAC Addr

Mgmt IP Addr

Commands

00:E0:81:55:XX:XX

129.129.129.129

pxe_flash_bios power_status


The script generates results similar to the following example:


129.129.129.129 has 2 Total Commands
===================================
Chassis Power is on
129.129.129.129 "pxe_flash_bios" = In order to flash the system BIOS, system must be powered off for System 00:E0:81:55:XX:XX
 
129.129.129.129 "power_status" =  Chassis Power is on for System 00:E0:81:55:XX:XX

9. Save and exit /pxe_flash/input_file.

D.3.2 Flashing the BIOS using the PXE Server Image

1. Ensure that the power is off for the target system(s). If the system power is on, the script issues an error message asking you to power off the system.

2. To issue a valid user ID and password to the target system through IPMI, edit /pxe_flash/pxe_flash.sh.

Starting at Line 228 of the pxe_flash.sh script, modify the value of variables USERID and PASSWORD. These variables will be used when contacting the remote machine via IPMI. All target systems must accept the same user ID and password for the script to function properly.

3. To flash the BIOS on all targets specified in the input_file, type the following command:

sh pxe_flash.sh -f input_file

For example, when the input file includes the following text and the target system power is on, the script generates the results below.


# Sys MAC Addr

00:E0:81:55:XX:XX

Mgmt IP Addr

129.129.129.129

Commands

pxe_flash_bios


129.129.129.129 has 1 Total Commands
 
===================================
 
Chassis Power is on
129.129.129.129 "pxe_flash_bios" = In order to flash the system BIOS, system must be powered off for System 00:E0:81:55:XX:XX
129.129.129.129 has 1 Total Commands
 
===================================
129.129.129.129 "power_status" =  Chassis Power is on for System 00:E0:81:55:XX:XX

 

D.3.3 Removing the PXE Flash Configuration File(s)

The pxe_flash_bios command option generates a configuration file for each target system. To use PXE for any purpose other than flashing the BIOS, delete the configuration file for each target system.

1. Change directories to /tftpboot/linux-install/pxelinux.cfg.

cd /tftpboot/linux-install/pxelinux.cfg

2. Delete the configuration file for each target system.

For example, the pxe_flash_bios command for MAC Address 00:E0:81:55:XX:XX creates a PXE configuration file named 00-E0-81-55-XX-XX.