Penguin
Note: You are viewing an old revision of this page. View the current version.

PXE/NFS Install of FreeBSD 5.2.1

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.58.3.1;

And 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/nfs_server 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 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
10.x.y.z:/usr/local/export/freebsd

Happy installing.