PXE + sysinstall(8) install.cfg: DHCP Attribute to map install config/policy to system MAC?

Brian A. Seklecki (CFI NOC) seklecki at noc.cfi.pgh.pa.us
Wed Apr 21 19:59:09 UTC 2010


All:

   The install.cfg mechanism is pretty wicked.

   Unfortunately, there doesn't seem to be a really efficient way
   to provide new clients (or class of clients) an install.cfg
   without rebuilding an MFSROOT image.

   At least with pxeboot(8), in TFTP-only-mode, using
   dhcpd.conf(5) client{} entries, there isn't a way
   to differentiate policies.

   It's just going to go looking for /boot/loader.rc
   and /boot/loader.conf from wherever DHCP told PXE
   to fetch pxeboot(8) from.

   From there, you need to custom compile a 5 meg
   mfsroot image for each [class of] client.

   With an NFS stage-2 boot, I suppose you could set:
     option root-path "/export/${client}Root" etc.,
   but then your 5 meg mfsroot is just extracted
   1-per-client.

   Still seems a bit ugly.  It seems like we could teach
   sysinstall(8) to fetch install.cfg by some standard
   mechanism.

   Possibly a TFTP or NFS URL passed from the DHCP server
   -> boot loader -> kernel sysctl -> sysinstall(8).

   For example, the Sun SPARC4s would TFTP fetch their
   stage 1 boot loader via TFTP with a filename req
   of their MAC address in HEX format, so one could
   just put symlinks in place.

Thoughts or other ideas?

~BAS

PS: our in-tree tftpd(8) is an unending source of sorrow and misery and 
clinical despair.   ports/net/freebsd-tftp is a lifesaver (it actually 
has debugging)




More information about the freebsd-questions mailing list