Configure nfsroot
While still sitting in the chrooted environment, you should set a root password by typing the following:


If you need additional user accounts, add those now as well by typing the following:


You can now exit the chrooted environment by typing the following:


Now you need to modify the /usr/nfsroot/etc/fstab file so that it contains the following:        /      nfs         rw      0   0
proc /proc procfs rw 0 0
You will of course need to change the IP address. The IP address should be the IP address of the computer that the NFS Root server will be running on. NOT the IP address that you will assign to the client machine.

If you are setting up an NFS Root server for a headless system, you should edit the /usr/nfsroot/etc/ttys file and turn off all the virtual consoles. They are useless on headless systems and just waste precious memory. You will probably want to enable the serial console though so you have some means of getting onto the console if needed. Here is an example of the relevant portion of my ttys file.
# If console is marked "insecure", then init will ask for the root password
# when going to single-user mode.
console none unknown off secure
ttyv0 "/usr/libexec/getty Pc" cons25 off secure
# Virtual terminals
ttyv1 "/usr/libexec/getty Pc" cons25 off secure
ttyv2 "/usr/libexec/getty Pc" cons25 off secure
ttyv3 "/usr/libexec/getty Pc" cons25 off secure
ttyv4 "/usr/libexec/getty Pc" cons25 off secure
ttyv5 "/usr/libexec/getty Pc" cons25 off secure
ttyv6 "/usr/libexec/getty Pc" cons25 off secure
ttyv7 "/usr/libexec/getty Pc" cons25 off secure
ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure
# Serial terminals
# The 'dialup' keyword identifies dialin lines to login, fingerd etc.
ttyd0 "/usr/libexec/getty std.9600" vt100 on secure
Next you should copy /etc/resolv.conf and /etc/localtime by typing the following:

cp /etc/resolv.conf /usr/nfsroot/etc
cp /etc/localtime /usr/nfsroot/etc

If your system will store its time in local time as opposed to UTC (a.k.a. GMT), then you should create the /usr/nfsroot/etc/wall_cmos_clock file by typing the following:

touch /usr/nfsroot/etc/wall_cmos_clock

If you don't want to have the FreeBSD menu when you boot a client computer via NFS Root, you should bring the /usr/nfsroot/boot/loader.rc file into your favorite text editor, and comment out the lines you see below by placing a \ backslash \ in front of the lines.

(Note: You have to have a space after the backslash \ or else the boot process will complain saying "\include not found".)
\ Load in the boot menu
\ include /boot/beastie.4th
\ Start the boot menu
\ beastie-start
If you want your NFS Root client system to boot without delay, add the following line at the end of the /usr/nfsroot/boot/loader.rc file.

autoboot 0