mounting root from NFS via ROOTDEVNAME

Eggert, Lars lars at netapp.com
Wed Jan 30 09:32:27 UTC 2013


Hi,

On Jan 29, 2013, at 20:22, Craig Rodrigues <rodrigc at crodrigues.org> wrote:
> What kind of architecture are you trying to do this on?  Is this
> i386/amd64 or something else?

amd64

>  I am not familiar with netboot compared to
> PXE.  Is TFTP involved at all with netboot?

TFTP is not involved. The kernel gets booted by our custom loader (over HTTP) and the root FS is supposed to be mounted over NFS.

> What does your dhcpd configuration file look like?

Completely standard, with the addition of a "root-path" option. (Which I would like to get rid of by setting ROOTDEVNAME in the kernel.)

> Also, are you using the FreeBSD loader, or something else?  What kinds of
> customizations have you done on the loader?

Custom loader. 

> If through your setup you have already managed to load the kernel over
> the network, then a lot of the hard work has been done.  Telling the kernel
> where the root file system is located becomes the next tricky part.

Right, that's the step I am struggeling with. 

> In src/sys/boot/common/boot.c which is part of the loader (not the kernel),
> if you look in the getrootmount() function,
> you will see that the loader will try to figure out where the root file
> system
> is by parsing /etc/fstab, and looking for the "/" mount.
> 
> So, if your kernel is located in:
> 
>       /usr/home/elars/dst/boot/kernel/kernel
> 
> Then create a file /usr/home/elars/dst/etc/fstab file with something like:
> 
> # Device                                         Mountpoint    FSType
> Options  Dump Pass
> 10.11.12.13:/usr/home/elars/dst/       /         nfs      ro        0    0

Thanks, will try that!

> Alternatively, if you don't want to create an /etc/fstab file, then
> you could put something like this in your loader.conf file:
> 
> vfs.root.mountfrom=nfs:10.11.12.13:/usr/home/elars/dst

Will try that too, but not sure if this works with our custom loader.

Lars

> 
> If you can get this to work without introducing new kernel options,
> that would be ideal, because the kernel options you are
> enabling are triggering behaviors.
> 
> --
> Craig Rodrigues
> rodrigc at crodrigues.org



More information about the freebsd-current mailing list