# pxebooting different versions/variants of FreeBSD



## errorsmith (Dec 11, 2011)

Hi

I'm planning to setup a machine wich should provide several versions of FreeBSD and their respective amd64 and x86 variants. Addtionally the user should have the option to install the selected os(es) locally.

Currently I'm using pxelinux.0 from syslinux to create a text-based menu for the user to select the desired option like this:

1. diskless boot FreeBSD 8.0 amd64
2. Install FreeBSD 8.0 amd64 locally
3. diskless FreeBSD 8.0 x86
4. Install FreeBSD 8.0 x86 locally
5. Recovery System

In fact I'm planning to provide some more FreeBSD versions and some linux distros too, but there is no problem with that currently and the above example is the one I'm using for testing now.

gpxelinux chains the regular /boot/pxeboot and gives it control to do the rest. This works fine: I'm able to boot into a testbed installation of FreeBSD.

Unfortunately for me, pxeboot relies on the dhcp-option "root-path" to be set. It uses it to know where the rootfs resides. As the user should be able to select the version to load/install freely, I can't preconfigure this on a machine basis (by using the mac address as identifier).

Is there a way to circumvent the need need of the dhcp option "root-path" and set it instead manually via a config file or as a parameter? 
If not: How can I achieve my goal of pxebooting the different versions of FreeBSD?

with kind regards,

errorsmith


----------



## feenberg (Dec 15, 2011)

*root-path not necessary?*

According to:

http://www.wonkity.com/~wblock/docs/html/pxe.html

you don't need to set the root-path in dhcpd.conf, you can set it as a kernel option in the gpxelinux configuration file. That posting (by Warren Block) is new, and I haven't tried anything in it yet, but I hope to try it out, since my efforts to use gpxelinux a year ago didn't work out to well. See http://www.nber.org/sys-admin/FreeBSD-diskless.html

Please post again success/failure.

Daniel Feenberg


----------



## wblock@ (Dec 15, 2011)

Yes, that's my PXE article, but AFAIK, a) the kernel setting only works for Linux, and b) only selects the kernel, not the root filesystem.


----------

