I tried to share the root / from a fedora 9 to a freeBSD while when I tried to mount the / folder it complained with "[tcp] nfs_server:/: RPCPROG_NFS: RPC: Program not registered". I followed the below steps to setup on the fedora nfs server:-

Add the below line inside the /etc/exports

/       nfs_client(rw,no_root_squash,sync)

restart the nfs related service

service portmapper restart
service nfslock restart
service nfs restart

export the filesystem using the below command:-

exportfs -arv

On the nfs client, I have troubleshoot using the below command:-

rpcinfo -p nfs_server
   program vers proto   port  service
    100000    2   tcp    111  rpcbind
    100000    2   udp    111  rpcbind
    100024    1   udp  32816  status
    100024    1   tcp  34173  status
    100011    1   udp    817  rquotad
    100011    2   udp    817  rquotad
    100011    1   tcp    820  rquotad
    100011    2   tcp    820  rquotad
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100021    1   udp  32818  nlockmgr
    100021    3   udp  32818  nlockmgr
    100021    4   udp  32818  nlockmgr
    100005    1   udp  32819  mountd
    100005    1   tcp  34174  mountd
    100005    2   udp  32819  mountd
    100005    2   tcp  34174  mountd
    100005    3   udp  32819  mountd
    100005    3   tcp  34174  mountd

showmount -e nfs_client
Exports list on nfs_server:
/                                  nfs_client

What else did I missed?


Finally I can mount the nfs using another linux machine, and I found that my freebsd rc.conf doesn't have the below line seems to be the root cause of the problem:-


What does that line do? Can a FreeBSD server be a NFS client without booting up with nfs_client_enable="YES" inside the rc.conf?

  • Short answer - Please read the FreeBSD handbook (freebsd.org/doc/en/books/handbook) - It explains everything. Longer answer - You MUST enable the NFS client functionality (which in turn enables the portmapper - the root cause of your problem) for a FreeBSD system to function as an NFS client. If a service is not enabled a start or restart won't make it run. – voretaq7 Sep 14 '11 at 17:18

I also had this problem recently connecting to an old Redhat server. After lots of shouting and swearing I fired up wireshark and worked out that it was expecting a udp connection against tcp:

$ sudo mount -t nfs tmif1:/rtdf /imports/tmif           
[tcp] tmif1:/rtdf: RPCPROG_NFS: RPC: Program not registered
$ sudo mount -t nfs -o udp,ro  tmif1:/rtdf /imports/tmif
$ mount -t nfs

tmif1:/rtdf on /imports/tmif (nfs, read-only)

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.