Date: Sun, 15 Feb 2015 20:08:33 -0500 (EST) From: Rick Macklem <rmacklem@uoguelph.ca> To: Beeblebrox <zaphod@berentweb.com> Cc: freebsd-net@freebsd.org Subject: more re: NFS and diskless: some questions re nfs_diskless.c Message-ID: <553358175.3932227.1424048913197.JavaMail.root@uoguelph.ca> In-Reply-To: <20150215174056.34912959@rsbsd.rsb>
next in thread | previous in thread | raw e-mail | index | archive | help
Beeblebrox wrote: > 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)? If you are using the BOOTP + BOOTP_NFSROOT case then, yes, you also need "options BOOTP_NFSV3" to get it to use NFSv3 instead of NFSv2. The environment variables (except vfs.root.mountfrom, see below) are ignored for the BOOTP + BOOTP_NFSROOT case. > 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? This executes for the "options NFSROOT" case, not the BOOTP + BOOTP_NFSROOT one. > > 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? > Oh, if the only thing you want to override is the root fs, I think you can set this environment variable (look at bootpc_init() in sys/nfs/bootp_subr.c) if you are using the BOOTP + BOOTP_NFSROOT case. vfs.root.mountfrom rick > Regards. > -- > FreeBSD_amd64_11-Current_RadeonKMS > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to > "freebsd-net-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?553358175.3932227.1424048913197.JavaMail.root>