old nfs client, new nfs host, incorrect mount option?

Rick Stevens ricks at alldigital.com
Sat Apr 11 00:18:56 UTC 2015


On 04/10/2015 04:35 PM, Tom H wrote:
> On Thu, Apr 9, 2015 at 9:15 AM, Tom Horsley <horsley1953 at gmail.com> wrote:
>>
>> I've got a system running centos 7 hosting lots of filesystems
>> available for NFS mounting.
>>
>> I've got a gazillion virtual machines that need to have their
>> fstab edited to mount these filesystems.
>>
>> I've now discovered that mechanically editing the fstab doesn't
>> work. On most of the VMs, if I say something like this:
>>
>> bob:/builder /bob/builder nfs rw,bg,hard,rsize=8192,wsize=8192 0 0
>>
>> then everything "just works", but as I go back in time, when I get
>> to a machine running fedora 11, I get the highly informative
>> "incorrect mount option" message. With lots of experimentation,
>> I eventually found that I could change the type from "nfs" to "nfs4"
>> and the mount would work.
>>
>> Is there a guide somewhere for which idioms to use for which version
>> of linux I want to mount in? Is there any way to automate adding
>> these fstab entries correctly? I thought the nfs server was supposed
>> to automatically fall back to old protocols if the client didn't know
>> something, am I missing some sort of configuration on the centos 7 host?
>
> Fedora defaulted to nfsv4 with F13 so "mount -t nfs ..." on F11 would
> default to nfsv3 and you had to use "mount -t nfs4 ..." to mount an
> nfsv4 share.
>
> "nfs4" is now deprecated (see "man nfs" on F13 or higher; or perhaps
> F14 or higher).
>
> Use "mount -t nfs -o nfsvers=<vers> ..." to specify a version, whether
> 2/3/4, except pre-F13 or pre-F14 (I can't remember which).
>
> Before the "nfs4" option was deprecated, you specified an nfsv2 or
> nfsv3 mount with "mount -t nfs -o nfsvers=<vers> ...", an nfsv4 mount
> with "mount -t nfs4 ...", and you couldn't use "mount -t nfs -o
> nfsvers=4 ..." for an nfsv4 mount.
>
> You could use "nfs4" for all of your mounts from F11 to F21, until
> it's removed, if ever.
>
> You can check which nfs versions are being used by an nfs server with
> "cat /proc/fs/nfsd/versions" or "rpcinfo -s" or "rpcinfo -p".
>
> CentOS 7 defaults to nfsv4 but unless you've disabled nfsv3 or are
> running a firewall and haven't set nfs up to share through it, nfsv3
> mounts should work. Try "mount -v -t nfs ..." on your F11 box and you
> might get a more verbose error message (if you're lucky!).

I think just specifying "-t nfs" should make the client negotiate with
the server and try to get you the latest that the server provides.
You'd use the "nfsvers=" stuff to force it one way or the other. You'd
use "proto=" to force UDP or TCP (UDP default in V3, TCP in V4).
----------------------------------------------------------------------
- Rick Stevens, Systems Engineer, AllDigital    ricks at alldigital.com -
- AIM/Skype: therps2        ICQ: 22643734            Yahoo: origrps2 -
-                                                                    -
-   "Do you suffer from long-term memory loss?"  "I don't remember"  -
-                            -- Chumbawumba, "Amnesia" (TubThumping) -
----------------------------------------------------------------------


More information about the users mailing list