netboot issues, 8.0, mfsroot mount failure

Charles Sprickman spork at
Wed Feb 17 01:28:05 UTC 2010


I'm having some problems getting 8.0 to install over the network.  I've 
got my dhcp, tftp and nfs server working well, and I've tested all three 
services from this host before attempting to boot over the network.

pxeboot seems to work, and I see it get loaded via tftp.  The kernel 
boots, and parses the options in loader.conf that exist in my nfs-exported 
8.0 DVD fileset:

[root at archive /home/spork/tmp]# cat 

I see the kernel does find mfsroot and attaches it:

md0: Preloaded image </boot/mfsroot> 4423680 bytes at 0xc0f6dfe0

But then when it's ready to mount the root filesystem, I get this:

SMP: AP CPU #1 Launched!
Trying to mount root from ufs:/dev/md0c

If you have invalid mount options, reboot, and first try the following 
from the loader prompt:

      set vfs.root.mountfrom.options=rw

and then remove invalid mount options from /etc/fstab.

It doesn't really state what the error is.  It's hinting that it's 
read-only, but that seems odd.  Even if it couldn't mount r/w, shouldn't 
it just drop to single-user at this point?

Next it tries nfs:

Trying to mount root from nfs:
em0: link state changed to UP

And there it sits.  Remotely I can't do anything.  If I'm local, I can 
ctrl-alt-del a few times and then about a minute later it does an orderly 

I'm not aware of a good way to snoop on nfs traffic, but tcpdump shows nfs 
traffic between the two hosts, which appears to be the client stat-ing a 
file or directory.  tcpdump also shows some checksum errors, but I recall 
a few threads here mentioning that on Intel cards that generally is not a 
cause for concern.

>From another host, I have no issues mounting that nfs filesystem r/w:

root at h10[/home/spork]# mount_nfs 
/mntroot at h10[/home/spork]# ls /mnt/
.cshrc          HARDWARE.TXT    boot.catalog    media           sbin
.profile        README.HTM      cdrom.inf       mnt             stand
8.0-RELEASE     README.TXT      dev             packages        sys
COPYRIGHT       RELNOTES.HTM    docbook.css     proc            tmp
ERRATA.HTM      RELNOTES.TXT    etc             rescue          usr
ERRATA.TXT      bin             lib             root            var
HARDWARE.HTM    boot            libexec         rr_moved
root at h10[/home/spork]# touch /mnt/foo
root at h10[/home/spork]# rm /mnt/foo
root at h10[/home/spork]# umount /mnt

Any ideas?  I've got about a dozen remote boxes to upgrade, so I want to 
totally nail down this procedure.  I've been putting off learning this for 
a few years, and now I've got an actual need for it.



More information about the freebsd-stable mailing list