SCIENTIFIC-LINUX-USERS Archives

September 2007

SCIENTIFIC-LINUX-USERS@LISTSERV.FNAL.GOV

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Jon Peatfield <[log in to unmask]>
Reply To:
Jon Peatfield <[log in to unmask]>
Date:
Mon, 24 Sep 2007 17:00:54 +0100
Content-Type:
TEXT/PLAIN
Parts/Attachments:
TEXT/PLAIN (95 lines)
You obviously also need a tftp server so the PXE rom (or etherboot) can 
obtain the UNDI stage.  I think that some people are using the UNDI 
provided as part of some other package (e.g. the Intel one) rather than 
the xelinux one which comes with syslinux.

Personally we use dhcp (the isc 3.x version as included in SL3/4/5), with 
the standard SL tftpd and syslinux-3.11 (as included in SL5 but we have 
used it with SL3/4 as well).

This is of-course not *really* obeying the PXE specs since that requires a 
modified dhcp server but the ISC-3 dhcpd can be configured to reply with 
enough magic options to get all but the most ancient PXE setups to tftp 
over the UNDI which can then fetch it's config and so boot (pretty much) 
anything you want...

The magic needed for the dhcpd.conf is something like:

...
# For PXE booting...
option space pxelinux;
option pxelinux.magic      code 208 = string;
option pxelinux.configfile code 209 = text;
option pxelinux.pathprefix code 210 = text;
option pxelinux.reboottime code 211 = unsigned integer 32;

...

  # match the genuine PXE boot roms
  class "pxeclients" {
   match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
   # Always include the following lines for all PXELINUX clients
   site-option-space "pxelinux";
   option pxelinux.magic f1:00:74:7e;
   if exists dhcp-parameter-request-list {
    # Always send the PXELINUX options
    append dhcp-parameter-request-list 208, 209, 210, 211;
   }
   # These lines should be customized to your setup
   option pxelinux.configfile "configs/common";
   option pxelinux.pathprefix "/tftpboot/pxelinux/files/";
   option pxelinux.reboottime 30;
   filename "/tftpboot/pxelinux/pxelinux.bin";
   # This marker is replaced by the local hostname
   next-server _MYHOST_ ;
  }

  # match the fake PXE boot roms/floppy
  class "etherboot" {
   match if substring (option vendor-class-identifier, 0, 13) = "Etherboot-5.3";
   # Always include the following lines for all PXELINUX clients
   site-option-space "pxelinux";
   option pxelinux.magic f1:00:74:7e;
   if exists dhcp-parameter-request-list {
    # Always send the PXELINUX options
    append dhcp-parameter-request-list 208, 209, 210, 211;
   }
   # These lines should be customized to your setup
   option pxelinux.configfile "configs/common";
   option pxelinux.pathprefix "/tftpboot/pxelinux/files/";
   option pxelinux.reboottime 30;
   filename "/tftpboot/pxelinux/pxelinux.bin";
   # This marker is replaced by the local hostname
   next-server _MYHOST_ ;
  }
...

Obviously you don't need to match all the way to Etherboot-5.3 if you are 
sure that ther versions work ok, but that happens to be the last etherboot 
version we bothered with - since all (well >99%) recent machines support 
PXE in rom anyway.

The pxelinux config file can specify many different options (we use it to 
allow installs of various setups and booting checkers like memtest+, 
disk-checkers, knoppix etc.

There is no need to have magic in the dhcpd.conf to pass ks paramenters 
since the syslinug/pxelinux config can specify that, e.g. for SL50 (on 
i386) we use an entry like:

  label sl50
   kernel sl/50/i386/vmlinuz
   append initrd=sl/50/i386/initrd.img ks=nfs:instsset.damtp.cam.ac.uk:/local/ssetup/sl/5x/Config/ks/cfg.normal50 noipv6

which works well enough for us - and has done back as far as at least RH8 
if not before.  It also allows us to just add new test entries with 
modified parameters (e.g. non-standard ks parameters) to check things 
before we make them the default.

If you are just net-booting the boxes you can arrange to just have it boot 
the relevant one and not prompt at all.

-- 
Jon Peatfield,  Computer Officer,  DAMTP,  University of Cambridge
Mail:  [log in to unmask]     Web:  http://www.damtp.cam.ac.uk/

ATOM RSS1 RSS2