On my Raspbian jessie I have NFS server running:

 $ sudo service rpcbind status
● rpcbind.service - LSB: RPC portmapper replacement
   Loaded: loaded (/etc/init.d/rpcbind)
  Drop-In: /run/systemd/generator/rpcbind.service.d
   Active: active (running) since Mon 2016-09-19 18:33:01 UTC; 2min 17s ago
  Process: 9800 ExecStart=/etc/init.d/rpcbind start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/rpcbind.service
           └─9809 /sbin/rpcbind -w

Sep 19 18:33:01 raspberrypi rpcbind[9800]: Starting rpcbind daemon....
Sep 19 18:33:01 raspberrypi systemd[1]: Started LSB: RPC portmapper replacement

and on my client machine mac

I am trying to mount the shared drive

$ sudo mount -o rsize=32768,wsize=32768,intr,noatime -t nfs /Volumes/USBHDD
mount_nfs: can't mount /home/pi/USBHDD from onto /Volumes/USBHDD: RPC prog. not avail
  • Can you use mount -v and add the output to the question? Also I assume that you did export USBHDD on your Raspbian and that the local USBHDD directory existis, correct? – nohillside Sep 19 '16 at 19:19
  • Are you really using * after the IP address when you run the command? And where do you get the error mentioned in the title, it doesn't show up in the question itself? – nohillside Sep 19 '16 at 19:21
  • @patrix yes USBHDD exists at both client and server – Ciasto piekarz Sep 20 '16 at 5:59
  • @patrix : sorry i missed pasting the complete text , I have updated it now. – Ciasto piekarz Sep 20 '16 at 16:32
  • What does rpcinfo -p show? See also: discussions.apple.com/thread/1356126?start=0&tstart=0 – MacManager Sep 22 '16 at 22:38

Try this:

pi@raspberrypi:~$ sudo /etc/init.d/nfs-kernel-server restart

I received this error message on the client side when the NFS server had crashed. It was resolved by

sudo systemctl restart nfs-server

on the server side


I received this error message on the client side when firewalld was blocking the mountd port on the server side. I could imagine this happening when firewalld was also blocking the port assigned to nfs. To remediate this issue, I added a new firewalld exception. Since the mountd port was dynamically generated (I didn't set the value in /etc/sysconfig/nfs as recommended here and here), I had to find which port to add an exception for. This document relates the command to use is rpcbind -p, and then search for mountd. In my case, this turned out to be port 20048. Finally, I made sure that all the ports were allowed through firewalld. Since nfs needs rpc, I allowed port 111 (both TCP and UDP), port 2049 (both TCP and UDP), and port 20048 (both TCP and UDP).

I'm not totally sure on how to do that last step on Raspbian (and I doubt you care, since my answer is almost four years too late), but that might get you up and running.

I noticed that you put the output of rpcinfo in the comments to your answer, so I'll include my "after" image for rpcinfo pointing at my server.

> rpcinfo -p
      program vers proto   port
       100000    4   tcp    111  rpcbind
       100000    3   tcp    111  rpcbind
       100000    2   tcp    111  rpcbind
       100000    4   udp    111  rpcbind
       100000    3   udp    111  rpcbind
       100000    2   udp    111  rpcbind
       100024    1   udp  44606  status
       100024    1   tcp  43709  status
       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
       100021    1   udp  46387  nlockmgr
       100021    3   udp  46387  nlockmgr
       100021    4   udp  46387  nlockmgr
       100021    1   tcp  36435  nlockmgr
       100021    3   tcp  36435  nlockmgr
       100021    4   tcp  36435  nlockmgr

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .