PXE/NFS Install of FreeBSD 5.x

See PXE for more information about PXE

IMPORTANT: None of the follow applies any security what so ever. You should use a FireWall and every other tool at your disposal to secure these services. TFTP has NO built-in security and NFS sucks just about as much.

You will need DHCP (isc-dhcpd 3 or above) setup and working on a server.

On your server machine, add the following lines to your DHCP configuraton
next-server 10.x.y.z;

Where 10.x.y.z is the IP of your server. In your subnet declaration add

option root-path "/usr/local/export/freebsd"; # This is where you have your install data located filename "pxeboot"

Restart dhcpd. Then copy the contents of your FreeBSD 5.2.1 ISO or CD-Rom to /usr/local/export/freebsd.

Add to your /etc/exports file (man exports)

/usr -alldirs -maproot=root -ro

And make sure your NFS server is functioning correctly, you might need to add
nfs_server_enable="YES" nfs_client_enable="YES" rpcbind_enable="YES" mountd_enable="YES"

To your /etc/rc.conf and run /etc/rc.d/nfsd start or similar. To check that it's working properly you can use

showmount -e

To list your available NFS exports and don't forget to check /var/log/messages.

Now you need to setup a TFTP server. First enable it in inetd by uncommenting

tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /tftpboot

In /etc/inetd.conf and then (re)start inetd. Make the directory /tftpboot and copy /usr/local/export/freebsd/boot/pxeboot into that directory.

Now all you need to do is turn on the target machine, watch the PXE Bios acquire an IP address and you should soon see the FreeBSD BootLoader. From now on the installer is just like a normal CD install. However, when it asks you for the location of your install media choose NFS and give the location

Happy installing.

PCMCIA cards not being recognised when plugged in ?

Try putting this into /boot/loader.conf

GNOME not showing up your battery status properly and/or giving you an 'APM not loaded error' when ACPI is enabled?

Adding to /etc/rc.conf the following

This will give you an error in dmesg going "/etc/rc: WARNING: /dev/apmctl not found; kernel is missing apm(4)?" but this will get rid of that nagging error in Gnome.

Delete, Home and End key don't work in FreeBSD (using PuTTY and bash)

Add the following to /.inputrc:

"\e[3~": delete-char
"\e[1~": beginning-of-line
"\e[4~": end-of-line

Where did 'seq' go?

FreeBSD does not have GNU 'seq' by default installed, it has 'jot' instead and is more functional than 'seq'. See the man page.