There used to be a way to install FreeBSD through a PXE bootloader. That
bootloader is still present in the ISO and while the article itself has
disappeared (http://www.freebsd.org/doc/en/articles/pxe/article.html), I assume
that this capability was not lost in the 9.x series.
PXE-based installs do not work out of the box in 9.1 anymore, a regression from
8.1 at the very least.
As you see in the above instructions, the user needed to comment out the
following line in /etc/fstab:
/dev/iso9660/FREEBSD_INSTALL / cd9660 ro 0 0
... otherwise the boot fails. Having to modify that file means we need to
duplicate all those files instead of being able to simply mount the ISO as a
filesystem and offer it over NFS...
But even then, this seems just like a crude workaround to a wider problem: in
8.1, the .ISO could be loaded directly into memory and boot properly through a
local memory filesystem.
That way, the .iso could be loaded directly from syslinux, for example with
pxelinux and memdisk:
MENU LABEL FreeBSD 8.1 i386
append initrd=freebsd/FreeBSD-8.1-RELEASE-i386-bootonly.iso iso raw
This doesn't work in 9.1 anymore, probably because the mfsroot file seems to be
gone from 9.1.
All this makes PXE-based FreeBSD deployments *much* harder and less attractive
than before, because we need to setup a separate NFS server and hack at the
Follow those instructions:
After further inspection, this may be the same bug as the rather short
Jesus died for his own sins, not mine.
- CRASS, 1978
Improvements to this would be really helpful.
For bugs matching the following conditions:
- Status == In Progress
- Assignee == "bugs@FreeBSD.org"
- Last Modified Year <= 2017
- Set Status to "Open"
I've made a patch for this https://reviews.freebsd.org/D27349 which enables booting from the installer images with memdisk.