svn commit: r344013 - head/usr.sbin/mountd

Martin Cracauer cracauer at
Mon Feb 11 15:51:29 UTC 2019

Author: cracauer
Date: Mon Feb 11 15:51:28 2019
New Revision: 344013

  Clarify NFSv4 /etc/exports semantics, with working example.
  The existing wording has been confusing users for years.


Modified: head/usr.sbin/mountd/exports.5
--- head/usr.sbin/mountd/exports.5	Mon Feb 11 15:38:05 2019	(r344012)
+++ head/usr.sbin/mountd/exports.5	Mon Feb 11 15:51:28 2019	(r344013)
@@ -498,6 +498,40 @@ and any client within the 131.104.48 subnet is permitt
 operations on the server, so long as valid Kerberos credentials are provided.
 The machine is permitted to perform NFSv4 state
 operations on the server using AUTH_SYS credentials, as well as Kerberos ones.
+In the following example some directories are exported as NFSv3 and NFSv4:
+.Bd -literal -offset indent
+V4: /wingsdl/nfsv4
+/wingsdl/nfsv4/usr-ports -maproot=root -network -mask
+/wingsdl/nfsv4/clasper   -maproot=root clasper
+Only one V4: line is needed or allowed to declare where NFSv4 is
+rooted.  The other lines declare specific exported directories with
+their absolute paths given in /etc/exports.
+The exported directories' paths are used for both v3 and v4.
+However, they are interpreted differently for v3 and v4.  A client
+mount command for usr-ports would use the server-absolute name when
+using nfsv3:
+.Bd -literal -offset indent
+mount server:/wingsdl/nfsv4/usr-ports /mnt/tmp
+A mount command using NFSv4 would use the path relative to the NFSv4
+.Bd -literal -offset indent
+mount server:/usr-ports /mnt/tmp
+This also differentiates which version you want if the client can do
+both v3 and v4.  The former will only ever do a v3 mount and the
+latter will only ever do a v4 mount.
+Note that due to different mount behavior between NFSv3 and NFSv4 a
+NFSv4 mount request for a directory that the client does not have
+permission for will succeed and read/write access will fail
+afterwards, whereas NFSv3 rejects the mount request.
 .Xr nfsv4 4 ,
 .Xr netgroup 5 ,

More information about the svn-src-all mailing list