diff --git a/nfs.conf b/nfs.conf
index 8c714ff7..21d3e7b2 100644
--- a/nfs.conf
+++ b/nfs.conf
@@ -68,7 +68,6 @@
# lease-time=90
# udp=n
# tcp=y
-# vers2=n
# vers3=y
# vers4=y
# vers4.0=y
diff --git a/systemd/nfs.conf.man b/systemd/nfs.conf.man
index 4436a38a..be487a11 100644
--- a/systemd/nfs.conf.man
+++ b/systemd/nfs.conf.man
@@ -171,7 +171,6 @@ Recognized values:
.BR lease-time ,
.BR udp ,
.BR tcp ,
-.BR vers2 ,
.BR vers3 ,
.BR vers4 ,
.BR vers4.0 ,
diff --git a/utils/mount/configfile.c b/utils/mount/configfile.c
index 3d3684ef..1d88cbfc 100644
--- a/utils/mount/configfile.c
+++ b/utils/mount/configfile.c
@@ -71,7 +71,7 @@ struct mnt_alias {
int mnt_alias_sz = (sizeof(mnt_alias_tab)/sizeof(mnt_alias_tab[0]));
static const char *version_keys[] = {
- "v2", "v3", "v4", "vers", "nfsvers", "minorversion", NULL
+ "v3", "v4", "vers", "nfsvers", "minorversion", NULL
};
static int strict;
diff --git a/utils/mount/mount.nfs.man b/utils/mount/mount.nfs.man
index 0409c96f..a78a3b0d 100644
--- a/utils/mount/mount.nfs.man
+++ b/utils/mount/mount.nfs.man
@@ -27,7 +27,7 @@ can mount all NFS file system versions. Under earlier Linux kernel versions,
.BR mount.nfs4
must be used for mounting NFSv4 file systems while
.BR mount.nfs
-must be used for NFSv3 and v2.
+must be used for NFSv3.
.SH OPTIONS
.TP
diff --git a/utils/mount/network.c b/utils/mount/network.c
index e803dbbe..0d80d08c 100644
--- a/utils/mount/network.c
+++ b/utils/mount/network.c
@@ -97,7 +97,7 @@ static const char *nfs_transport_opttbl[] = {
};
static const char *nfs_version_opttbl[] = {
- "v2",
+ "v2", /* no longer supported */
"v3",
"v4",
"vers",
@@ -1290,7 +1290,7 @@ nfs_nfs_version(char *type, struct mount_options *options, struct nfs_version *v
else if (found < 0)
return 1;
else if (found <= 2 ) {
- /* v2, v3, v4 */
+ /* v3, v4 */
version_val = version_key + 1;
version->v_mode = V_SPECIFIC;
} else if (found > 2 ) {
diff --git a/utils/mount/nfs.man b/utils/mount/nfs.man
index f1b76936..83365a37 100644
--- a/utils/mount/nfs.man
+++ b/utils/mount/nfs.man
@@ -12,7 +12,7 @@ created by Sun Microsystems in 1984. NFS was developed
to allow file sharing between systems residing
on a local area network.
Depending on kernel configuration, the Linux NFS client may
-support NFS versions 2, 3, 4.0, 4.1, or 4.2.
+support NFS versions 3, 4.0, 4.1, or 4.2.
.P
The
.BR mount (8)
@@ -941,11 +941,6 @@ file. See
.BR nfsmount.conf(5)
for details.
.SH EXAMPLES
-To mount an export using NFS version 2,
-use the
-.B nfs
-file system type and specify the
-.B nfsvers=2
mount option.
To mount using NFS version 3,
use the
@@ -972,13 +967,6 @@ reasonable defaults for NFS behavior.
server:/export /mnt nfs defaults 0 0
.fi
.P
-Here is an example from an /etc/fstab file for an NFS version 2 mount over UDP.
-.P
-.nf
-.ta 8n +16n +6n +6n +30n
- server:/export /mnt nfs nfsvers=2,proto=udp 0 0
-.fi
-.P
This example shows how to mount using NFS version 4 over TCP
with Kerberos 5 mutual authentication.
.P
@@ -1071,7 +1059,7 @@ and
can safely be allowed to default to the largest values supported by
both client and server, independent of the network's MTU size.
.SS "Using the mountproto mount option"
-This section applies only to NFS version 2 and version 3 mounts
+This section applies only to NFS version 3 mounts
since NFS version 4 does not use a separate protocol for mount
requests.
.P
@@ -1474,7 +1462,7 @@ the use of the
mount option.
.SS "Using file locks with NFS"
The Network Lock Manager protocol is a separate sideband protocol
-used to manage file locks in NFS version 2 and version 3.
+used to manage file locks in NFS version 3.
To support lock recovery after a client or server reboot,
a second sideband protocol --
known as the Network Status Manager protocol --
@@ -1894,8 +1882,6 @@ RFC 768 for the UDP specification.
.br
RFC 793 for the TCP specification.
.br
-RFC 1094 for the NFS version 2 specification.
-.br
RFC 1813 for the NFS version 3 specification.
.br
RFC 1832 for the XDR specification.
diff --git a/utils/mount/nfsmount.conf b/utils/mount/nfsmount.conf
index 6bdc225a..342063f7 100644
--- a/utils/mount/nfsmount.conf
+++ b/utils/mount/nfsmount.conf
@@ -28,7 +28,7 @@
# This statically named section defines global mount
# options that can be applied on all NFS mount.
#
-# Protocol Version [2,3,4]
+# Protocol Version [3,4]
# This defines the default protocol version which will
# be used to start the negotiation with the server.
# Defaultvers=4
diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c
index fa67a66f..3c4e218a 100644
--- a/utils/mount/stropts.c
+++ b/utils/mount/stropts.c
@@ -357,6 +357,7 @@ static int nfs_insert_sloppy_option(struct mount_options *options)
static int nfs_set_version(struct nfsmount_info *mi)
{
+
if (!nfs_nfs_version(mi->type, mi->options, &mi->version))
return 0;
@@ -1016,7 +1017,6 @@ static int nfs_try_mount(struct nfsmount_info *mi)
}
switch (mi->version.major) {
- case 2:
case 3:
result = nfs_try_mount_v3v2(mi, FALSE);
break;
@@ -1247,6 +1247,14 @@ static int nfsmount_start(struct nfsmount_info *mi)
if (!nfs_validate_options(mi))
return EX_FAIL;
+ /*
+ * NFS v2 has been deprecated
+ */
+ if (mi->version.major == 2) {
+ mount_error(mi->spec, mi->node, EOPNOTSUPP);
+ return EX_FAIL;
+ }
+
/*
* Avoid retry and negotiation logic when remounting
*/
diff --git a/utils/mountd/mountd.man b/utils/mountd/mountd.man
index 77e6299a..a206a3e2 100644
--- a/utils/mountd/mountd.man
+++ b/utils/mountd/mountd.man
@@ -286,10 +286,9 @@ The values recognized in the
section include
.BR TCP ,
.BR UDP ,
-.BR vers2 ,
.BR vers3 ", and"
.B vers4
-which each have same same meaning as given by
+which each have the same meaning as given by
.BR rpc.nfsd (8).
.SH TCP_WRAPPERS SUPPORT
diff --git a/utils/nfsd/nfsd.c b/utils/nfsd/nfsd.c
index b0741718..4016a761 100644
--- a/utils/nfsd/nfsd.c
+++ b/utils/nfsd/nfsd.c
@@ -226,7 +226,6 @@ main(int argc, char **argv)
}
/* FALLTHRU */
case 3:
- case 2:
NFSCTL_VERUNSET(versbits, c);
break;
default:
@@ -251,7 +250,6 @@ main(int argc, char **argv)
minorvers = minorversset = minormask;
/* FALLTHRU */
case 3:
- case 2:
NFSCTL_VERSET(versbits, c);
break;
default:
diff --git a/utils/nfsd/nfsd.man b/utils/nfsd/nfsd.man
index 2701ba78..634b8a63 100644
--- a/utils/nfsd/nfsd.man
+++ b/utils/nfsd/nfsd.man
@@ -57,7 +57,7 @@ This option can be used to request that
.B rpc.nfsd
does not offer certain versions of NFS. The current version of
.B rpc.nfsd
-can support major NFS versions 2,3,4 and the minor versions 4.0, 4.1 and 4.2.
+can support major NFS versions 3,4 and the minor versions 4.0, 4.1 and 4.2.
.TP
.B \-s " or " \-\-syslog
By default,
@@ -84,7 +84,7 @@ This option can be used to request that
.B rpc.nfsd
offer certain versions of NFS. The current version of
.B rpc.nfsd
-can support major NFS versions 2,3,4 and the minor versions 4.0, 4.1 and 4.2.
+can support major NFS versions 3,4 and the minor versions 4.0, 4.1 and 4.2.
.TP
.B \-L " or " \-\-lease-time seconds
Set the lease-time used for NFSv4. This corresponds to how often
@@ -156,8 +156,6 @@ Enable (with "on" or "yes" etc) or disable ("off", "no") UDP support.
.B TCP
Enable or disable TCP support.
.TP
-.B vers2
-.TP
.B vers3
.TP
.B vers4