NFS and diskless: some questions re nfs_diskless.c

Beeblebrox zaphod at berentweb.com
Sun Feb 15 15:41:08 UTC 2015


I have several questions on implementing the features in nfs_diskless.c. Understanding these parameters are necessary to get a decent menu-driven (grub2) boot process working for clients.

1. <root> for diskless clients get mounted as V2 instead of V3. I have defined { boot.nfsroot.options="nfsv3" }, but has no effect. Does the kernel need (options BOOTP_NFSV3)? Considering that nfs_diskless.c routine checks "get handle size. If this succeeds, it's an NFSv3 setup" and {nd3->root_fhsize = len; is_nfsv3 = 1;} might there be easier solution?

2. My DHCP server has {option root-path} defined and correctly mounts the NFS root. However, I would like to offer amd64/i386 choice from menu, which requires different root-path. I therefore plan to remove {option root-path} from dhcp.conf and pass nfsroot parameter in the boot menu using params ( boot.nfsroot.server="192.168.2.1"  \  boot.nfsroot.path="/data/amd64" )
Yet when I do that, the kernel is booted, NIC goes up but:
  re0 link state changed to UP
  Received DHCP Ack packet on re0 from 192.168.2.1 (accepted)
  DHCP/BOOTP timeout for server 255.255.255.255
The client is on 192.168.2.0/26 (broadcast is 192.168.2.63), Kernel has (options BOOTP/ options BOOTP_NFSROOT). Is there a solution to this?

Regards.
-- 
FreeBSD_amd64_11-Current_RadeonKMS


More information about the freebsd-net mailing list