26

I want to mount the NFS share of a Zyxel NSA310s NAS. Showmount, called on the client machine, shows the share:

$ showmount 10.0.0.100 -e
Export list for 10.0.0.100:
/i-data/7fd943bf/nfs/zyxelNFS *

The client's /etc/fstab contains the line:

10.0.0.100:/i-data/7fd943bf/nfs/zyxelNFS /media/nasNFS nfs rw  0 0

But mounting does not work:

sudo mount /media/nasNFS/ -v
mount.nfs: timeout set for Mon May 25 17:34:46 2015
mount.nfs: trying text-based options 'vers=4,addr=10.0.0.100,clientaddr=10.0.0.2'
mount.nfs: mount(2): Protocol not supported
mount.nfs: trying text-based options 'addr=10.0.0.100'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 10.0.0.100 prog 100003 vers 3 prot TCP port 2049
mount.nfs: portmap query retrying: RPC: Program/version mismatch
mount.nfs: prog 100003, trying vers=3, prot=17
mount.nfs: trying 10.0.0.100 prog 100003 vers 3 prot UDP port 2049
mount.nfs: portmap query failed: RPC: Program/version mismatch
mount.nfs: Protocol not supported

nfs-common is installed. What else can be missing?

9
  • What version of the NFS protocol is provided by the NSA310s? It looks like your client only supports version 3 and maybe the server is only version 4 (or 2) – Anthon May 25 '15 at 16:24
  • I don't know the NFS version that the NSA310s uses internally. The client runs a current Ubuntu 15.04 distribution, is it necessary to explicitly allow NFS v4 ? – Geom May 25 '15 at 16:44
  • try nfs4 in the /etc/fstab instead of nfs. I looked up the specs for the NSA310s but doesn't specify which version of NFS is supported. – Anthon May 25 '15 at 17:07
  • 1
    what does rpcinfo 10.0.0.100 tell you? It should mention the supported versions. It looks like the NFS server does not like UDP. You can force TCP using the mount option tcp but it will probably does not help you directly since TCP is already tried according to line 7 in your output. Is there a firewall in between which is blocking the mount to succeed? And sometimes mounts will succeed by just restarting the NFS server. – Lambert May 25 '15 at 17:53
  • 2
    In that case your NFS server only supports version 2. Try to mount using option vers=2 – Lambert May 26 '15 at 9:35
23

To summarize the steps taken to get to the answer:

According to the output given the NFS server does not like NFSv4 nor UDP. To see the capabilities of the NFS server you can use rpcinfo 10.0.0.100 (you might extend the command to filter for nfs by: |egrep "service|nfs")

Apparently the only version supported by the server is version 2:

rpcinfo 10.0.0.100 |egrep "service|nfs"
program version netid     address                service    owner
100003  2       udp       0.0.0.0.8.1            nfs        unknown
100003  2       tcp       0.0.0.0.8.1            nfs        unknown

Solution to mount the export is to use mount option vers=2 either on the commandline:

mount -o rw,vers=2 10.0.0.100:/i-data/7fd943bf/nfs/zyxelNFS /media/nasNFS

or by editing the /etc/fstab:

10.0.0.100:/i-data/7fd943bf/nfs/zyxelNFS /media/nasNFS nfs rw,vers=2  0 0

Another approach may be to change the NFS server to support version 3 (or even 4).

1
  • 5
    Useful pointer to rpcinfo for troubleshooting, thanks, – RichVel Mar 10 '16 at 14:54
2

I'm getting this error on Fedora 31. It turns out the drive is already mounted...

2
  • What, "Protocol not supported"? Are you sure it's because the drive is already mounted? I don't get that error when repeating an NFS mount request for a share that's already mounted. (In fact, I don't get any error at all.) I only get the error when there's a protocol mismatch – roaima Jul 24 '20 at 16:50
  • 1
    Yep, I dismounted. Remounted and no error. Then remounted again while mounted and again got the error. I have other projects so I can't look into it now but I thought I'd throw this cause up as it apparently happens under some conditions even I have no idea why and agree it doesn't make sense. – Swiss Frank Jul 24 '20 at 17:47
1

I ran into the "Protocol not supported" error as well. In my case the root cause turned out to be a subtle issue with a DNS reverse entry.

Background: I was using NFSv4 and had the following entries in /etc/exports:

/srv/nfs      *.example.com(ro,fsid=root,insecure,no_subtree_check,async,root_squash)
/srv/nfs/data myhost.example.com(rw,sync,no_subtree_check)

Instead of the FQDN, running host 1.2.3.4 returned pointers to both "myhost." and "myhost.example.com.". My NFS server seemed to look at the first PTR entry in the DNS response only which didn't match the wildcard in /etc/exports and as a consequence it blocked NFSv4 from this host. So if you use rules based on host names in /etc/exports double-check that DNS reverse lookups work correctly for your clients.

-5

try to use this option

....   nfs    rsize=8192,wsize=8192,timeo=14,intr 0 0
2
  • please explain why – Jonas Stein Apr 6 '20 at 18:27
  • In some cases these parameters can help improving performance but they aren't related to the connection issues the OP described. – Martin Konrad May 3 '20 at 0:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.