Custom SYSLINUX For TFTP Install
1. Introduction
2. Menus
Introduction
I need a current version of SYSLINUX because the version available in the Debian and Ubuntu packages (when I frist wrote this article) did not support the Advanced menu options I wanted to use.wget -c http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.54.tar.bz2 - O /usr/local/src/syslinux-3.54.tar.bz2To extract without creating the directory structure, use 'pax'.
apt-get install paxNow we will...
- Remove 'pxelinux.0' that came in the Debian/Ubuntu netboot archives
- Extract the required files from the SYSLINUX archive and copy them to the TFTP server path.
cd rm /var/lib/tftpboot/pxelinux.0 pax -jrvf /usr/local/src/syslinux-3.54.tar.bz2 -s,syslinux-3.54/com32/modules/,, syslinux-3.54/com32/modules/menu.c32 pax -jrvf /usr/local/src/syslinux-3.54.tar.bz2 -s,syslinux-3.54/,, syslinux-3.54/pxelinux.0 mv menu.c32 /var/lib/tftpboot/ mv pxelinux.0 /var/lib/tftpboot/
Menus
We need to replace the '/var/lib/tftpboot/pxelinux.cfg' with one of our own which will enable us modify the menus to boot either the Debian or Ubuntu installers.rm /var/lib/tftpboot/pxelinux.cfg mkdir -p /var/lib/tftpboot/pxelinux.cfgNow create the default menu.
vi /var/lib/tftpboot/pxelinux.cfg/defaultSample
DEFAULT menu.c32
ONTIMEOUT skip
PROMPT 0
TIMEOUT 100
MENU TITLE Flexion.Org
LABEL skip
MENU LABEL ^Boot from Hard Disk
LOCALBOOT 0
LABEL etch
MENU LABEL ^Debian 4.0r2 (Etch)
CONFIG etch-installer/i386/pxelinux.cfg/default
LABEL gutsy
MENU LABEL ^Ubuntu 7.10 (Gutsy)
CONFIG gutsy-installer/i386/pxelinux.cfg/default
LABEL reload
MENU LABEL ^Reload
kernel pxelinux.0
At this point, you can PXE boot and install either Debian or Ubuntu via the Internet
$Id: CustomSYSLINUXForTFTPInstall,v 1.8 2008/01/08 06:17:11 martin Exp $
Wiki Index All Recent Edit Top

