2

I need to replace an old pcnfsd server with a newly installed CentOS 7 server. I installed all the requirements and it seems to work, sadly when the (very very old ms-dos like) client tries to read the files it gets nothing. The mount is performed correctly but then file access doesn't work.

The only thing I could see on the server is that in nfsstat -s I see RPC's badcalls increasing.

The current server is an Ubuntu 10, and rpcinfo -p shows this:

100000    2   tcp    111  portmapper
100000    2   udp    111  portmapper
100024    1   udp  50143  status
100024    1   tcp  42419  status
100021    1   udp  35807  nlockmgr
100021    3   udp  35807  nlockmgr
100021    4   udp  35807  nlockmgr
100021    1   tcp  50799  nlockmgr
100021    3   tcp  50799  nlockmgr
100021    4   tcp  50799  nlockmgr
100003    2   udp   2049  nfs
100003    3   udp   2049  nfs
100003    4   udp   2049  nfs
100003    2   tcp   2049  nfs
100003    3   tcp   2049  nfs
100003    4   tcp   2049  nfs
100005    1   udp  45251  mountd
100005    1   tcp  57920  mountd
100005    2   udp  45251  mountd
100005    2   tcp  57920  mountd
100005    3   udp  45251  mountd
100005    3   tcp  57920  mountd
150001    1   udp    967  pcnfsd
150001    2   udp    967  pcnfsd
150001    1   tcp    968  pcnfsd
150001    2   tcp    968  pcnfsd

while on the new CentOS 7 I have:

100000    4   tcp    111  portmapper
100000    3   tcp    111  portmapper
100000    2   tcp    111  portmapper
100000    4   udp    111  portmapper
100000    3   udp    111  portmapper
100000    2   udp    111  portmapper
150001    1   udp    914  pcnfsd
150001    2   udp    914  pcnfsd
150001    1   tcp    917  pcnfsd
150001    2   tcp    917  pcnfsd
100005    1   udp  20048  mountd
100005    1   tcp  20048  mountd
100005    2   udp  20048  mountd
100005    2   tcp  20048  mountd
100005    3   udp  20048  mountd
100005    3   tcp  20048  mountd
100003    3   tcp   2049  nfs
100003    4   tcp   2049  nfs
100227    3   tcp   2049  nfs_acl
100003    3   udp   2049  nfs
100003    4   udp   2049  nfs
100227    3   udp   2049  nfs_acl
100021    1   udp  40636  nlockmgr
100021    3   udp  40636  nlockmgr
100021    4   udp  40636  nlockmgr
100021    1   tcp  36825  nlockmgr
100021    3   tcp  36825  nlockmgr
100021    4   tcp  36825  nlockmgr
100024    1   udp  57976  status
100024    1   tcp  56153  status

I suspect the running portmapper daemons for version 3 and 4 is confusing the client.

What I need is to disable advertising of v3 and v4 on the portmap daemon, but I couldn't find the options to do that. How can I?

  • multiple version is not a problem as client uses one which is compatible. But may be your client wants to use NFS v2? As Enzo Wang suggested, check the traffic. – kofemann Sep 8 '15 at 7:18
  • Probably. But as you say it should be allowed to, v2 is offered according to rpcinfo. I'll try debugging as soon as I can, sadly the client is a physical working machine and I cannot disconnect it so easily – Maxxer Sep 8 '15 at 7:20
  • from your post is hard to say which part got an error. So packet capture will help a lot – kofemann Sep 8 '15 at 9:46
1

You can capture the traffic between the old client and NFS server to find out the issue.

On your NFS server:

tcpdump -vvv -nn -s 300 -A port 2049 and host $Client_IP -w nfs.cap

Open the nfs.cap file with wireshark, you could see the issues I think.

An pic for my nfs.cap is attached.

Here is a very good guide for debugging NFS issues you can have a look stromberg.dnsalias.org/~strombrg/NFS-troubleshooting-2.html

To disable certain NFS version support you could probably pass --no-nfs-version X to rpc.nfsd. Search disabling-nfsv4-on-ubuntu.

Check this picture:

enter image description here

  • 1
    I made a first test by disabling v4 but I saw no change. I added RPCNFSDARGS="--no-nfs-version 4" to /etc/sysconfig/nfs and rpcinfo -p still shows portmapper and nfs version 4 listening... – Maxxer Sep 9 '15 at 12:52
  • 1
    I accepted your answer even if it's not the answer but led me to solve. It was me being too dumb: rpcinfo was showing portmap listening on version 2, but not nfs itself! Adding RPCNFSDARGS="-V 2" to /etc/sysconfig/nfs and restarting nfs-config and nfs-server made nfs listen to version 2 and the client work! thank you both! – Maxxer Sep 14 '15 at 12:49

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.