Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Mar 2014 07:46:35 -0800
From:      Steve Rikli <sr@genyosha.net>
To:        "Chad J. Milios" <milios@ccsys.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: FreeBSD 9.X network installation using PXE+TFTP (not NFS) !
Message-ID:  <20140307154635.GB17044@dragon.genyosha.home>
In-Reply-To: <5319AEA2.2030402@ccsys.com>
References:  <CAMMGsZ%2BBOpLowveVLOoGZqTNva1o%2BiHXwu28dW1X-Uf%2BnG476w@mail.gmail.com> <5319AEA2.2030402@ccsys.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Mar 07, 2014 at 06:33:54AM -0500, Chad J. Milios wrote:
> On 3/7/2014 5:36 AM, amine tay wrote:
> >Hi everyone,
> >I'm trying to perform a FreeBSD 9.X network installation using PXE+TFTP
> >(not NFS) !
> >The problem using NFS is the need to specify the root-path in the dhcp
> >conf, therefore we can't deploy multiple releases or different images of
> >freebsd.
> >
> >So to enable the tftp instead of NFS we have to edit make.conf with these
> >lines
> >LOADER_TFTP_SUPPORT=YES
> >LOADER_NFS_SUPPORT=NO
> >and rebuild the pxeboot file
> >
> >1st question is : Is this modification going to allow the install of
> >differents freebsd images?
> >
> >Note that I'm using an automated os deployement solution , and I am using
> >mac-adresses to deploy freebsd depending on policies, so for exemple two
> >clients with different mac-adresses will have two diffrents freebsd images.
> >
> >Thanks in advance for your help !
>
> Can't one already control this similarly to what you describe by
> using NFS and the DHCP server (dhcpd.conf for example)? Is there a
> constraint that you have limited control of the DHCP server? Based
> on my understanding of your question, I have done what you are
> trying to do using vanilla pxeboot and ports/net/isc-dhcp42-server.

This may not be the exact OP's issue, but perhaps it's related since an
OS deployment solution was mentioned (maybe Kickstart & PXElinux ?).

The cumbersome behavior I used to run into with the FreeBSD pxe boot
loader was the hardcoded root path:

#define PXENFSROOTPATH  "/pxeroot"

... or get the root path from DHCP, which necessitates changing DHCP's
config when an install client needs to be reloaded with a different
version or OS.

IIRC the Solaris PXE loader used to have similar (and more) behavior;
no idea what it does nowdays.

I haven't tried to PXE install FreeBSD since 6.3 days so maybe that
situation has changed since then, but that kind of requirement used
to make it challenging to run labs full of generic clients which would
need to be re-installed with different versions and OSes periodically.

Linux Kickstart and PXElinux met that need pretty well, where a PXElinux
menu (and/or pxe config file) would specify a particular Kickstart
config file to use per OS install, and that ks config file would include
details about where to get the specific OS images, where and how to mount
or download them, etc.

I'm just speculating about OP's use case, but since Kickstart and
PXElinux seem to be very prevalent for OS deploys, maybe applicable.

sr.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140307154635.GB17044>