TRIUMF Grid System Management Documentation

TRIUMF Grid PXE Boot Server

Installation of a pxeboot service

local documentation: /usr/share/doc/syslinux-VERSION
local documentation: man tftp
online documentation: Online reference []
  1. The tftp RPM must be installed, configured and enabled in /etc/hosts.allow.  Note that xinetd must be running, since it starts tftp on demand:
    # service tftp start
    # grep tftp /etc/hosts.allow
    in.tftpd                :
  2. The syslinux RPM must also be installed.  It provides the pxeboot image that you must copy to the /tftpboot directory:
    # cp -p /usr/lib/syslinux/pxelinux.0 /tftpboot/
    Note that pxeboot will look in /tftpboot/pxelinux.cfg/ for it's boot environment.
  3. The linux distribution installation boot image and the corresponding initrd image must be installed in the /tftpboot area.  This example assumes SL 303:
    # mkdir /tftpboot/303
    # cp -p /ks/mirror/303/i386/images/SL/pxeboot/vmlinuz /tftpboot/303/
    # cp -p /ks/mirror/303/i386/images/SL/pxeboot/initrd.img /tftpboot/303/
  4. Finally a ansconda installation configuration file must be created for this distribution.  Different configuration files may be created; for example, append ksdevice=eth1 to force kickstart over eth1
    This example is a generic kickstart for SL 303.  If more than one ethernet interface exists it will interactively ask which interface should be used for kickstart to proceed:
    # cat syslinux-303.cfg
    default kslinux
    prompt 1
    timeout 10
    display boot.msg
    F1 boot.msg
    F5 rescue.msg
    label kslinux
      kernel 303/vmlinuz-boot-303
      append load_ramdisk=1 ip=dhcp \
       initrd=303/initrd.img network ks=nfs:
    label expert
      kernel 303/vmlinuz-orig
      append expert initrd=303/initrd.img

Setting up a client for installation via pxeboot

create a symlink at lcfg:/tftpboot/pxelinux.cfg/ to the desired configuration.  Node IP addresses must be converted to hexidecimal in the symlink name.  See the readme.txt file in that directory for a list hexidecimal names. Example
# ln -s syslinux-303.cfg C0A80163