Best practices

This section provides best practices information for usingLinux Scripting Toolkit.

Performing PXE deployments by using the Linux Scripting Toolkit

To perform a PXE deployment by using the Linux Scripting Toolkit, you must first configure the TFTP server on the source server and update the Toolkit Preferences page with the IP address of the TFTP server.

When you use the Linux Scripting Toolkit to create PXE image deployments based on the provided Boot Media Profiles, the files are placed in the /tftpboot directory. For example, to apply a PXE deployment image created from a Boot Media Profile called PXE_test, you must follow these steps:

  1. In the Linux Scripting Toolkit, select Create Boot Media . When the process is complete, the following directory structure is created in the /tftpboot directory:

    • /tftpboot/
    • /tftpboot/lnxtoolkit
    • /tftpboot/lnxtoolkit/pxelinux.cfg
    • /tftpboot/lnxtoolkit/pxelinux.cfg/PXE_test
    • /tftpboot/lnxtoolkit/PXE_test
    • /tftpboot/lnxtoolkit/PXE_test/tc.zip
    • /tftpboot/lnxtoolkit/PXE_test/img2a
    • /tftpboot/lnxtoolkit/PXE_test/tcrootfs
    • /tftpboot/lnxtoolkit/PXE_test/img3a
    • /tftpboot/lnxtoolkit/bsb1.lss
    • /tftpboot/lnxtoolkit/pxelinux.0
    • /tftpboot/lnxtoolkit/bsb.msg
    • /tftpboot/pxelinux.cfg

  2. Examine the contents of the configuration file. As a rule, no changes should be required. In the following example, the configuration file is /tftpboot/lnxtoolkit/PXE_test. The contents will be similar to the following:

    prompt 0
    default toolscenter
    timeout 100
    label toolscenter
    display bsb.msg
    kernel /PXE_test/img2a
    append initrd=/PXE_test/img3a vga=0x317 root=/dev/ram0 rw ramdisk_size=100000 
    tftp_server=192.168.0.1 tftp_tcrootfs=/lnxtoolkit/PXE_test/tcrootfs 
    tftp_tczip=/lnxtoolkit/PXE_test/tc.zip debug_level=1 
    silent_boot=no boot_src=4 tftp_blksize=1420 media_boot=no
  3. Copy the contents of the configuration file to the default file:

    cp /tftpboot/lnxtoolkit/pxelinux.cfg/PXE_test /tftpboot/lnxtoolkit/pxelinux.cfg/default
  4. By using the IP address of your server, ensure that the DHCP configuration contains a block similar to this example:

      if substring(option vendor-class-identifier, 0,9) = "PXEClient" {
        filename "lnxtoolkit/pxelinux.0";      # file to be served
        next-server 192.168.0.1;               # This server's ipaddress 
      }

After you have completed these steps, any system within the DHCP server network can start this generated PXE image.

Performing a PXE deployment to a specific device

To perform a PXE deployment to a specific target, you must have the MAC address of the target. Using that address, follow these steps:

  1. In the Linux Scripting Toolkit, select Create Boot Media . When the process is complete, the following directory structure is created in the /tftpboot directory:

    • /tftpboot/
    • /tftpboot/lnxtoolkit
    • /tftpboot/lnxtoolkit/pxelinux.cfg
    • /tftpboot/lnxtoolkit/pxelinux.cfg/PXE_test
    • /tftpboot/lnxtoolkit/PXE_test
    • /tftpboot/lnxtoolkit/PXE_test/tc.zip
    • /tftpboot/lnxtoolkit/PXE_test/img2a
    • /tftpboot/lnxtoolkit/PXE_test/tcrootfs
    • /tftpboot/lnxtoolkit/PXE_test/img3a
    • /tftpboot/lnxtoolkit/bsb1.lss
    • /tftpboot/lnxtoolkit/pxelinux.0
    • /tftpboot/lnxtoolkit/bsb.msg
    • /tftpboot/pxelinux.cfg

  2. Examine the contents of the configuration file. As a rule, no changes should be required. In the following example, the configuration file is /tftpboot/lnxtoolkit/PXE_test. The contents will be similar to the following:

    prompt 0
    default toolscenter
    timeout 100
    label toolscenter
    display bsb.msg
    kernel /PXE_test/img2a
    append initrd=/PXE_test/img3a vga=0x317 root=/dev/ram0 rw ramdisk_size=100000 
    tftp_server=192.168.0.1 tftp_tcrootfs=/lnxtoolkit/PXE_test/tcrootfs 
    tftp_tczip=/lnxtoolkit/PXE_test/tc.zip debug_level=1 
    silent_boot=no boot_src=4 tftp_blksize=1420 media_boot=no
  3. Change to the /tftpboot/lnxtoolkit/pxelinux.cfg/ directory and create a symbolic link using the MAC address of the target system to point to the bootable media configuration file:

    ln -s PXE_test 01-00-14-5e-b5-4a-7e
  4. Ensure that the rest of the DHCP configuration contains a block similar to this example:

      host mymachine {
          hardware ethernet 00:14:5e:b5:4a:7e;
          option domain-name-servers 192.168.0.1;   # DNS server
          fixed-address 192.168.0.2;                # Target system IP
          filename "lnxtoolkit/pxelinux.0";         # file to be served
          next-server 192.168.0.1;                  # This server's IP
      }

Disabling uEFI PXE to decrease network boot time

To improve the time it takes to start the network for uEFI-based systems, follow these steps:

  1. Start the system.
  2. Press F1 to display the menu options.
  3. Navigate to System Settings > Network > PXE Configuration.
  4. Select Port %MAC1%.
  5. Select Enable PXE, and press Enter.
  6. Select Legacy Support, and press Enter.
  7. Select Save Changes, and press ESC.
  8. Select Port %MAC2%.
  9. Select Enable PXE, and press Enter.
  10. Select Legacy Support, and press Enter.
  11. Select Save Changes, and press ESC.

Linux X server considerations

There are special considerations for using Linux X server with a RSA II port. If you are using this configuration, consider the following items:

If the Remote Supervisor Adapter II-EXA is installed on a server that is running either the Red Hat Enterprise Linux (RHEL) or SUSE Linux operating system, make sure that the Linux operating system is selected in the Remote Supervisor Adapter II settings in the server BIOS. To set Linux as the operating system in the server BIOS, complete the following steps:

  1. Either start or restart the server.
  2. When prompted, press F1 to display the configuration menu.
  3. Click Advanced Setup > ASM Settings.
  4. In the OS USB field, select Linux.
  5. Select Save Values and Reboot ASM.
Note: If you run an automated X Window system configuration utility, repeat these configuration changes.

Install the operating system in text mode. Set the color depth to 16bit and the screen resolution to 1024 x 768.

If SUSE Linux or Red Hat Enterprise Linux is already installed and configured to run in text mode, and will never use the X Window system, no additional configuration is required for the RSA II-EXA to function correctly.

The Remote Supervisor Adapter II-EXA requires a Video Electronics Standard Association (VESA) device driver. The VESA video device driver enables the remote control screen and the local screen to display the same information (clone mode).

When using power management, the video output might not return correctly from some power saving states. To correct this problem, use the xset command to disable DPMS: xset -dpms

For more information, see IBM Remote Supervisor Adapter II-EXA Technical Update for Linux Operating Systems available from ftp://ftp.software.ibm.com/systems/support/system_x_pdf/88p9275.pdf.

Special considerations for BladeCenter Blades and Linux X server configuration

After installing BladeCenter blade and Linux X servers, do not change the monitor configuration or any other graphical settings. If you must change the graphics settings, enter the following command to start the configuration utility:
sax2 -m 0=fbdev

When using power management, the video output might not return correctly from some power saving states. To correct this problem, use the xset command to disable DPMS as shown: xset -dpms

Booting from a USB key

To boot from a USB key, the key must be configured for Lenovo ServerGuide Scripting Toolkit, Linux Edition deployment. For more information about configuring a USB key for deployments, see Creating bootable media from a workflow.

BIOS settings for booting from a USB key are system-specific. Refer to the documentation for your systems for the correct BIOS settings and procedures to boot from USB keys.

Some systems support booting from USB keys by pressing F12 during startup. This method is the recommended one to use to deploy the Linux Scripting Toolkit from a USB key. uEFI-based systems only support booting from a USB key by using F12.

IPv6 compliance

IPv6 implementation includes:

Performing network based installations of SLES11 SP1 using static IPv6 addresses

When performing a network-based installation of SLES11 SP1 in a static IPv6 environment, you must use either ipv6=1, which accepts both IPv4 and IPv6 addresses, or ipv6only=1, which accepts only IPv6 addresses, as a boot parameter.

For example, to configure static IPv6 addresses for an IPv6-only network, use these boot parameters:

ipv6only=1  netdevice=eth0  hostip=2000::2dae:2390/64

Enabling Linux Scripting Toolkit PXE images to work with other PXE images

The Linux Scripting Toolkit uses a customized pxelinux.0 file rather than the default file that comes with syslinux. If you already have a PXE server in your network and want to use PXE images generated by the Linux Scripting Toolkit with other PXE images, you must implement a PXE chain. To implement a PXE chain, perform these steps:

  1. Download syslinux 3.72 or higher from http://www.kernel.org/pub/linux/utils/boot/syslinux/.
  2. Copy the file core/pxelinux.0 from the syslinux directory structure to your tftproot directory.
  3. Extract the file pxechain.com from a PXE image created with the Linux Scripting Toolkit. The pxechain.com file is located in /tftpboot/lnxtoolkit/image_name/tc.zip. For example, if you have created a PXE image called PXE_test using the Linux Scripting Toolkit, you can extract pxechain.com by using the following command:
    unzip /tftpboot/lnxtoolkit/PXE_test/tc.zip
  4. Copy the pxechain.com file to your tftproot directory.
  5. Copy /tftpboot/lnxtoolkit/pxelinux.0 to your tftproot directory.
  6. Create a subdirectory of your tftproot directory called lnvgy.
  7. Copy the PXE files created by the Linux Scripting Toolkit into the tftproot/lnvgy directory.
  8. Create a subdirectory of tftproot called pxelinux.cfg.
  9. Create the file tftproot/pxelinux.cfg/default. This sample default file includes the PXE image created by the Linux Scripting Toolkit. You can add other existing PXE images as shown:
     prompt 0
     default lenovochain
     timeout 100
     label lenovochain
     kernel pxechain.com
     append ::lenovo/pxelinux.0
     label your_other_pxe
     kernel pxechain.com
     append ::your_other_pxe/pxelinux.0

When you have completed these steps, the tftproot file structure looks like this:

|-- lenovo
|   |-- img2a
|   |-- img3a
|   |-- pxelinux.0      <- Lenovo's modified pxelinux.0
|   |-- pxelinux.cfg
|   |   `-- PXE_test     <- The default file for Linux Scripting Toolkit 
created PXE Image
|   |-- tc.zip
|   `-- tcrootfs
|-- your_other_pxe
|   |-- vmlinux
|   |-- initrd.gz
|   |-- pxelinux.0      <- your_other_pxe's pxelinux.0
|   `-- pxelinux.cfg
|     `-- default       <- your_other_pxe's default
|-- pxechain.com        <- pxechain.com from tc.zip (Step 1)
|-- pxelinux.0          <- pxelinux.0 from syslinux 3.72 (or later)
`-- pxelinux.cfg
    `-- default         <- default file for pxechain.com