[[PageOutline]] = PXE-utilities = This is a release of the SARA package of utilities that we use to boot our nodes with PXE-enabled network cards. This was developed because we always want to use the PXE-enabled network card as our first boot device. With [http://syslinux.zytor.com/pxe.php pxelinux], which is a derivative of [http://syslinux.zytor.com/ syslinux], you can specify with a PXE configuration file how the node must boot. This configuration is placed in, e.g. ''/tftpboot/pxelinux.cfg'' directory. We use this utiltiy for the following purposes: * To instruct a node to do a memory test ([http://www.memtest86.com/ memtest86] or [http://www.memtest.org/ Memtest86+]) . * To instruct a node to flash its bios firmware or other firmware via the pxe dos boot method ([http://syslinux.zytor.com/memdisk.php memdisk]) * Installation of a node with the aid of [http://www.systemimager.org systemimager] software == Systemimager setup example == In our setup we have a default setup. The default setup is to boot from harddisk. When a node boots it fetches the default configuration file and the configuration file instructs the node to boot from the harddisk. This setup is used for nodes that are being been installed by [http://www.systemimager.org systemimager]. At SARA we have developed the following strategy how to install a fresh node. 1. The ip-address in our setup is known for the new node. So we make a link in the ''/tftpboot/pxelinux.cfg'' directory to a pxe config file which instructs that it has to fetch the kernel and root filesystem from our bootserver, eg: {{{ 0A000A02 ---> default.node_install (10.0.10.2) }}} 1. The client starts and uses the systemimager software to install the node. The installation script connects to a daemon on the bootserver. This daemon will remove the PXE config file for this node. 1. The node reboots and will use the default pxe config file which will instruct the node to boot from harddisk. == Utilities == This release contains the following utilities (All utilities are written in Python): pxeconfigd:: This is daemon that removes the pxe configuration file of a node. pxeconfig:: With this program we can specify which pxe config file a node or nodes must use. This utility will create the links in ''/tftpboot/pxelinux.cfg'' hexls:: Is a utility that diplays a directory, and, if in this directory contains HEX files, it will convert them to IP-numbers and hostnames. == PXE menu tools == Also included in this package are the PXE-menu tools which are used to control the booting of networked computers directly from the computer's console at the BIOS level before any operating system has been loaded. You get an on-screen hierarchical menu system which you navigate with the keyboard, and this allows you to select dynamically the tool or disk image to be booted. The PXE menus are based on the [http://syslinux.zytor.com/menu.php SYSLINUX menu systems]. The PXE menus are extremely useful for diagnostic purposes, for firmware upgrades, or for selecting an operating system installation method, of an individual computer while you work at its console (for remote management of multiple computers you probably want to use the ''pxeconfig'' tool in stead). Some example PXE menu configuration files are included which you can customize for your own environment and hardware. Among the possibilities is to enable the [http://www.ultimatebootcd.com/ Ultimate Boot CD] collection of boot disks directly from the PXE menus. For Linux cluster node booting it is recommended to let the PXE menus [source:trunk/pxemenu/pxelinux.cfg/default.menu default.menu] be the ''default'' PXE boot method: With the example configuration the computer console will display the PXE menus for 5 seconds, allowing manual intervention if desired. After the 5 second timeout the computer will boot automatically from the hard disk. == Documentation == How to install and make use of the '''pxeconfig''' package: * [wiki:PxeInstallation Installation] * [wiki:PxeUsage Usage] A useful link about how to use Systemimager and the pxeconfig tools is: * https://wiki.fysik.dtu.dk/niflheim/System_administration How to install and use the '''PXE menu''' tools: * Installation: Please see the file [source:trunk/INSTALL-pxemenu INSTALL-pxemenu] * Usage: Please see the file [source:trunk/README-pxemenu README-pxemenu] A more detailed discussion of the PXE menu tools is currently in: * https://wiki.fysik.dtu.dk/niflheim/PXE-booting == How to use this system == The system is configured for the following tasks: * Submit problems via [report:1 ticket system] or via email to [mailto:pxeconfig@sara.nl pxeconfig emailing list] * Can checkout the sources via subversion: * svn co https://subtrac.sara.nl/oss/svn/pxeconfig/tags, for the ''stable'' sources * svn co https://subtrac.sara.nl/oss/svn/pxeconfig/trunk for the latest source * Browse the [source: sources] * Everybody can add or change documentation.