Markus Boelter

Email: <m AT SPAMFREE FreeBSD DOT org>

Project: Bundled PXE Installer

Synopsis: The goal is to have a fully functional automatic and bundeled installation system for FreeBSD using PXE. You will be able to install e.g. cluster nodes with only booting over network and with no further interaction needed. It may be similar to RedHat Kickstart or Sun JumpStart. As the scond step I will try to setup the complete PXE Boot Server environment on a FreeSBIE live CDROM.

Project Details: Serverside requirements:

The Configfile could "feel" like /etc/rc.conf and hold settings for slices and partitions, network settings, language settings, packages to install, pre- and postinstall scripts, ... Maybe it's possible to use this config-file to generate a configuration template for sysinstall. Deeper research is needed to find out if this makes sense. Otherwise I will need a script for parsing this file and execute fdisk and disklabel with correct parameters directly.

Clientside requirements:

FreeSBIE integration: Inlcude all serverside scripts, configs and programs to a FreeSBIE live CDROM, configuration might be stored on a USB Stick or on a network share (nfs, ...)


Fri, 23. June 2006:

My mentor Paul Saab and I worked out that the primary goal should be to have an NetBoot Server that should be as easy as possible to use for end users. The first two weeks I still had exams at university. Nearby I spent a lot of time to look at other PXE Servers in Solaris, several Linux distributions and distributions using BSDInstaller. The first idea was to build a port which will enable a PXE NetBoot Server. After a closer look we decided against it because if it should be as easy to use as possible, the port has to touch and modify a lot of critical config files on a FreeBSD system. So ne next goal I have is to fix the NetBoot Server in BSDInstaller II on FreeBSD and include it into FreeSBIE II.

The third week I struggeled with compiling BSDInstaller II succesfully on FreeBSD. Today, on 23rd on June I got everything compiling, the lua based backend and also the ncurses frontend. I am using a lot of the work Andrew Turner did on implementing BSDInstaller into FreeBSD on the last SoC 2005.

FreeSBIE II generates its ISO-image based on a /usr/src-tree and several installed packages and ports. Andrew did already ports for all libs. I will create a port for the frontend and one for the backend. When creating a FreeSBIE live CD, these ports can be selected to be added to the CD. The only dependencie out of this BSDInstaller stuff will be ISC-DHCP-Server; it will answer PXE Boot requests and point the client to a tftp server. This tftp-server and also nfs-server are included in the FreeBSD base system, so no additional ports are needed.

Wed, 16. August 2006:

The NetBootServer is getting more and more polished and is very easy to use with FreeSBIE. At the moment I am mainly working on an "autoinstaller" for FreeBSD - that is not specifically bound to FreeSBIE nor BSDInstaller. It is a rc-script which reads a config file and installs FreeBSD on a harddisk.

One of the main challanges is to make partitioning/slicing and to install the bootloader easy to use in the config-file.

I am also working on reproducing a BSDInstaller installation on another computer with the config provided by the previous installation.

Things I want to to (also after SoC): - port DragonflyBSD rconfig to FreeBSD - better integration from autoinstall and BSDInstaller - maybe RAID-Volumes in autoinstall - ... :)


I am a 24 years old student at the University of Cooperative Education in Loerrach, Germany. My course is Information Technology at the engineering department. I am at the 4th semester at the moment and will get my bachelor degree in Sep 2007.

MarkusBoelter (last edited 2008-06-17 21:37:48 by localhost)