4.3. Booting from the Network

To boot the system with a bootable network card, you need three services:

  1. First, you need a service that answers queries from the network card. On Intel-based computers, this is generally PXE. During the PXE boot process, first a special PXE boot image is loaded. This controls the remainder of the boot process. Itanium Processor Family computers are started for the network boot via elilo.

  2. tftpd is responsible for making the kernel and the first system available. To configure tftpd, use the provided YaST module.

  3. To boot with the boot server for the installation, you need a third service — an installation server. This service is described in detail in Section 4.1. “Setting up a Central Installation Server”. With the aid of this service, you can also operate a system entirely without any local hard disks. In this case, it is recommended to make the root file system available through NFS.

4.3.1. Configuring tftpd

The actual boot process entails two stages. The first boot image, which is loaded by the computer, varies according to the architecture.

▪ x86
The PXE image pxelinux.0 is loaded by BIOS. This takes control of the remainder of the boot process. First, PXE fetches a configuration file from the tftp server. ▪

▪ ipf
The computer firmware starts by loading the boot image elilo.efi from the tftp server. This then loads a configuration file from the tftp server, which controls the boot process from this point. ▪

▪ ipseries
For configuration, refer to http://penguinppc.org/~hollis/linux/rs6k-netboot.shtml". ▪

First, create the main directory for tftpd. This is the /tftpboot directory:

mkdir /tftpboot  

4.3.1.1. Preparing tftp for PXE Boot

The boot image needed to operate PXE can be found in the syslinux package under /usr/share/syslinux/pxelinux.0. Copy this file to the /tftpboot directory:

cp /usr/share/syslinux/pxelinux.0 /tftpboot

The configuration file for PXE is stored in the /tftpboot/pxelinux.cfg directory. Here, it is possible to create a standard configuration file for all computers to boot. However, it is also possible to use a separate configuration file for each IP address. If, for example, you want to create a separate configuration file for the IP address 192.168.0.0, determine its name with the command gethostip 192.168.0.0. If no special configuration file is found, PXE tries to open a file called default.

In the configuration file for PXE, a number of options are available. Typically, a configuration file for the installation of a computer looks like this:

default linux
label linux
  kernel linux
  append initrd=initrd ramdisk_size=65536 install=slp:

implicit        0
display         message
prompt          1
timeout         200
notice          2

For this configuration to work, copy the linux and initrd files from the first installation CD to the /tftpboot directory. Find these files on the CD under /boot/loader/. Also define an installation source available through SLP. The procedure for this is described in Section 4.1. “Setting up a Central Installation Server”.

4.3.1.2. Preparing tftp for Booting Itanium Processor Family Computers

The image required for network booting of Itanium Processor Family computers is contained on the first CD for SUSE LINUX Enterprise Server, in the /boot/image file. To prepare for the boot process, extract file bootia64.efi from this image and copy it as elilo.efi to the /tftpboot directory. To launch the boot process, the files linux, initrd, textmenu, and elilo.conf must also be copied to /tftpboot. Assuming that the first CD is available in the /media/cdrom/ directory, achieve this by entering the following commands:

mount -o loop,ro /media/cdrom/boot/image /mnt
cd /mnt/efi/boot
cp -p linux initrd textmenu elilo.conf /tftpboot
cp -p bootia64.efi /tftpboot/elilo.efi
umount /mnt

The final step is to supplement the append lines in /tftpboot/elilo.conf by adding another parameter, install=slp:. This tells the installation system that it should search for its installation source using the SLP protocol.

4.3.2. Configuring dhcpd

dhcpd is responsible for telling the computer where it can find the boot image. The computer, which functions as a network client, is assigned an IP address. YaST includes a module for configuring dhcpd. Provide a client with the location of the boot image using the parameter filename.

▪ x86;amd64;em64t

filename "pxelinux.0";

▪ ipf

filename "elilo.efi";

If tftpd is not running on the same server as dhcpd, also enter the address of the tftpd server in the configuration:

next-server sun

4.3.3. Launching the Boot Process

During the boot process, the computer's BIOS automatically searches for a boot source. The dhcp server answers this query and provides the data necessary to boot with either PXE or elilo.

Before the actual boot process starts, a “boot:” prompt is displayed, after which you can enter any additional parameters for kernel and linuxrc, if needed.