diff options
author | alfred <alfred@FreeBSD.org> | 2001-11-12 02:33:52 +0000 |
---|---|---|
committer | alfred <alfred@FreeBSD.org> | 2001-11-12 02:33:52 +0000 |
commit | fa9d19d5b5a167a7b50a018bacf9d0bf68db9491 (patch) | |
tree | 661a9bb10d2313edc596f0373f96041cee806ac5 /sbin | |
parent | bdcad4abe9842b7ce28d140987a31959a30d3665 (diff) | |
download | FreeBSD-src-fa9d19d5b5a167a7b50a018bacf9d0bf68db9491.zip FreeBSD-src-fa9d19d5b5a167a7b50a018bacf9d0bf68db9491.tar.gz |
Allow users to use the 'nolockd' or -L options with mount_nfs in order
to avoid the need for rpc.lockd to perform client locks. Using
this option a user can revert back to using local locks for NFS mounts
like we did before we had rpc.lockd.
Diffstat (limited to 'sbin')
-rw-r--r-- | sbin/mount_nfs/mount_nfs.8 | 20 | ||||
-rw-r--r-- | sbin/mount_nfs/mount_nfs.c | 8 |
2 files changed, 26 insertions, 2 deletions
diff --git a/sbin/mount_nfs/mount_nfs.8 b/sbin/mount_nfs/mount_nfs.8 index 88110bf..57b9544 100644 --- a/sbin/mount_nfs/mount_nfs.8 +++ b/sbin/mount_nfs/mount_nfs.8 @@ -41,7 +41,7 @@ .Nd mount nfs file systems .Sh SYNOPSIS .Nm -.Op Fl 23NPTUbcdils +.Op Fl 23NPTUbcdiLls .Op Fl D Ar deadthresh .Op Fl I Ar readdirsize .Op Fl R Ar retrycnt @@ -109,6 +109,21 @@ message is displayed. Set the readdir read size to the specified value. The value should normally be a multiple of DIRBLKSIZ that is <= the read size for the mount. +.It Fl L +Do +.Em not +forward +.Xr fcntl 2 +locks over the wire. +All locks will be local and not seen by the server +and likewise not seen by other NFS clients. This removes +the need to run the +.Xr rpcbind 8 +service and the +.Xr rpc.statd 8 +and +.Xr rpc.lockd 8 +servers on the client. .It Fl N Do .Em not @@ -226,6 +241,9 @@ Same as .It intr Same as .Fl i . +.It lockd +Same as not specifying +.Fl L . .It nfsv2 Same as .Fl 2 . diff --git a/sbin/mount_nfs/mount_nfs.c b/sbin/mount_nfs/mount_nfs.c index 778bdd9..8889d07 100644 --- a/sbin/mount_nfs/mount_nfs.c +++ b/sbin/mount_nfs/mount_nfs.c @@ -96,6 +96,7 @@ static const char rcsid[] = #define ALTF_ACREGMAX 0x10000 #define ALTF_ACDIRMIN 0x20000 #define ALTF_ACDIRMAX 0x40000 +#define ALTF_NOLOCKD 0x80000 struct mntopt mopts[] = { MOPT_STDOPTS, @@ -118,6 +119,7 @@ struct mntopt mopts[] = { { "acregmax=", 0, ALTF_ACREGMAX, 1 }, { "acdirmin=", 0, ALTF_ACDIRMIN, 1 }, { "acdirmax=", 0, ALTF_ACDIRMAX, 1 }, + { "lockd", 1, ALTF_NOLOCKD, 1 }, { NULL } }; @@ -228,6 +230,7 @@ set_flags(int* altflags, int* nfsflags, int dir) F(RDIRPLUS); F(RESVPORT); F(SOFT); + F(NOLOCKD); #undef F #undef F2 @@ -252,7 +255,7 @@ main(argc, argv) nfsargs = nfsdefargs; nfsargsp = &nfsargs; while ((c = getopt(argc, argv, - "23a:bcdD:g:I:il:No:PpR:r:sTt:w:x:U")) != -1) + "23a:bcdD:g:I:iLl:No:PpR:r:sTt:w:x:U")) != -1) switch (c) { case '2': mountmode = V2; @@ -303,6 +306,9 @@ main(argc, argv) case 'i': nfsargsp->flags |= NFSMNT_INT; break; + case 'L': + nfsargsp->flags |= NFSMNT_NOLOCKD; + break; case 'l': nfsargsp->flags |= NFSMNT_RDIRPLUS; break; |