PXE Boot server

I am trying to setup a PXE boot server so that I network install FreeBSD and Linux (redhat & centOS). I am doing this on FreeBSD 12.1

I am have FreeBSD setup on a server with ZFS-on-root using tftp-hpa.

My question is - Do I have to have a NFS mount for booting FreeBSD? Can I make it a mountpoint and call it a day?

Also, I am loosely following this - https://virtualisationworks.wordpress.com/2017/10/20/network-booting-freebsd/

If there is something better that can give me more details I would appreciate it. Trying to build my own documentation as well.
 
This is going to sound ridiculous, but instead of using FreeBSD's pxeboot that only uses NFS, you could setup SYSLINUX to load via TFTP during PXE and have it load the disc1 FreeBSD ISO into a RAM disk via TFTP. I use this strategy for my OpenBSD boxes so I don't have to burn discs or wipe USB keys (which don't install well anyway).
 
How do you have it do automated installations? As in I want each installation to have the same disk layout and always be ZFS
 
You're probably going to want to setup NFS then, otherwise you would be having to create install media.
 
Right. So i'm wondering if its worth moving from CentOS 8 to FreeBSD...becasue of native support. However i'm having issues finding 100% correct instructions that aren't missing pieces I feel.
 
However I didn't mention this before but I also want to be able to pxe boot Linux distributions off of there as well.
 
What do you mean by "native support?"

You could use a PXE SYSLINUX loader to present a menu to boot between FreeBSD's NFS pxeboot and whatever Linux setup you want.
 
It is possible to use gpxelinux.0 as the pxe bootloader and then chain FreeBSD's pxeboot from one of the PXELINUX menus with the following entry:

Code:
 LABEL FreeBSD-PXE
   MENU LABEL PXE-FreeBSD
   PXE pxeboot
   MENU DEFAULT
 
I got it working...DHCP config
Are booting directly from pxeboot ? Let me know how you get on. I had it working, but booting was agonisingly slow, although I had it working much faster in the past but must have changed something and now it almost unusable.

What version of FreeBSD are you using?
 
I am able to get CentOS 7 to work just fine. I would venture to say that the rest of them will be fine. Its going to be CentOS/RHEL 8.
 
So I need to do more testing. CentOS 8 failed. But I need to figure out how to get FreeBSD network install working. I have the ISO extracted to a folder I just need to figure out how to tell the boot process where the rest of the installer is.....
 
Since you haven't answered how you've got it working, I am just guessing you're using PXE SYSLINUX. By default, you're not going to get a modified FreeBSD ISO that isn't re-imaged working without the NFS mount. You could set LOADER_TFTP_SUPPORT as described in diskless(8) and rebuilding /usr/src/stand and then put the ISO on TFTP.
 
Since you haven't answered how you've got it working, I am just guessing you're using PXE SYSLINUX. By default, you're not going to get a modified FreeBSD ISO that isn't re-imaged working without the NFS mount. You could set LOADER_TFTP_SUPPORT as described in diskless(8) and rebuilding /usr/src/stand and then put the ISO on TFTP.

mfsBSD boots up OK without an NFS mount.
 
Back
Top