Newsroom Update

Beginning in May, a special Today at Apple series titled “Made for Business” will offer small business owners and entrepreneurs free opportunities to learn how Apple products and services can support their growth and success. Learn more >

Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

NFS Manager

I am having an issue that I can't resolve using NFS Manager between two OS 10.7 Lion Mac Pros. I have contacted NFS Manager support staff for help, but so far they have not suggested anything useful to try to help fix this problem.


I am using NFS Manager as a server and exporting to a client. I am using default parameters, except I add read-only and access control by a selected IP address client. Here is the resulting /etc/exports file written by NSF Manager on server:

/Volumes/L2A -ro 132.239.153.189

Here are the running processes on the server:

mast:L2A walker$ ps -aef | grep nfsd

0 8400 1 0 9:31PM ?? 0:00.02 /sbin/nfsd

mast:L2A walker$ ps -aef | grep rpc

0 8376 1 0 9:28PM ?? 0:00.00 /usr/sbin/rpc.lockd

0 8377 1 0 9:28PM ?? 0:00.00 /usr/sbin/rpc.statd

1 8378 1 0 9:28PM ?? 0:00.06 /usr/sbin/rpcbind

0 8379 8376 0 9:28PM ?? 0:00.00 /usr/sbin/rpc.lockd

0 8401 1 0 9:31PM ?? 0:00.00 /usr/libexec/rpc.rquotad

Now on the client, I use Disk Utility to mount nfs://132.239.152.84/Volumes/L2A to /Volumes/L2A (I have also tried using NFS Manager on client, but same problem occurs). I created the /Volumes/L2A directory manually on the client. Here is rpcinfo on client:

sh-3.2# rpcinfo -p 132.239.152.84

No remote programs registered.

And of course:

sh-3.2# ls -al /Volumes/L2A/

ls: : RPC prog. not avail

I note that no Apple firewalls are enabled on either host or client. I also note that tcpwrapping was turned off completely (hosts.allow has "ALL:ALL") on both. Both are using DHCP to get their network settings, which have been verified of course with what I use above with ifconfig.

I have tried "sudo kill -HUP pid" for the rpc processes on the server, but to no avail.

I also did "sudo nsfd restart" on server, but that also didn't help.

Lastly, I tried mounting using NFS Manager on the client instead of Disk Utility, but also could not get it to work.

My guess is that there is something blocking the port, but there are no firewalls in place that I know of.

Can you help? I'm desparate. I have tried AFP, but I do not like the feature set of that protocol for my networking application.


Mac Pro, Mac OS X (10.7.3)

Posted on Mar 7, 2012 8:20 AM

Reply
14 replies

Mar 7, 2012 9:27 AM in response to Grant Bennet-Alder

Thanks very much for the response.


I do not fully understand, but I infer from the fact that the subnet text box is grayed out (in NFS Manager, server config) that this only applies to configurations where I am exporting it up to a subnetwork. I'm only trying to export it to a specified IP address. Am I wrong in that inference above? If so, how can I make this subnet modification?


Kris

Mar 7, 2012 9:34 AM in response to ktwalker69

I do not fully understand your file server, but if you are going from one Mac to another on a local Network for anything, the Subnet mask here:


System Preferences > Network > Ethernet-port


must be wide enough to include both IP Addresses, so that they can freely and directly communicate.


The most common subnet mask, 255.255.255.0 is only 8 bits wide, so the two IP Addresses would be on different subnets, and could not communicate directly.

Mar 7, 2012 10:18 AM in response to ktwalker69

Update: as I mentioned above, running "rpcinfo -p server" on the client shows no programs registerd. However, when I run on the same exact command on the server, it sees itself:


mast:/Users/walker>rpcinfo -p 132.239.152.84

program vers proto port

100000 2 udp 111 portmapper

100000 3 udp 111 portmapper

100000 4 udp 111 portmapper

100000 2 tcp 111 portmapper

100000 3 tcp 111 portmapper

100000 4 tcp 111 portmapper

100024 1 udp 693 status

100011 1 udp 994 rquotad

100011 2 udp 994 rquotad

100024 1 tcp 765 status

100011 1 tcp 761 rquotad

100011 2 tcp 761 rquotad

100021 0 udp 688 nlockmgr

100021 1 udp 688 nlockmgr

100021 3 udp 688 nlockmgr

100021 4 udp 688 nlockmgr

100021 0 tcp 755 nlockmgr

100021 1 tcp 755 nlockmgr

100021 3 tcp 755 nlockmgr

100021 4 tcp 755 nlockmgr


So what am I missing? Hidden Apple firewall? Port blocker somewhere, such as at a router?


Kris

Mar 7, 2012 10:55 AM in response to Grant Bennet-Alder

Sorry, I meant "default gateway", not "router". But sounds like there is direct communication without interference from such a middle-person.


Yes, no WiFi is involved. And I can ping the server from the client (and vice versa) just fine. I can also ssh from client to server and vice versa.


I tried to determine if there was a way to ping a specific port, but I wasn't able to find out how to do this.


Thank you,

Kris

Mar 7, 2012 11:15 AM in response to ktwalker69

I am now diving into the man page of rpcinfo. I have made some progress. To make it easier to follow:


server = mast

client = sail


on server mast, I found the "programs" and port numbers being used:

mast:/Users/walker>rpcinfo -p

program vers proto port

100000 2 udp 111 portmapper

100000 3 udp 111 portmapper

100000 4 udp 111 portmapper

100000 2 tcp 111 portmapper

100000 3 tcp 111 portmapper

100000 4 tcp 111 portmapper

100024 1 udp 693 status

100011 1 udp 994 rquotad

100011 2 udp 994 rquotad

100024 1 tcp 765 status

100011 1 tcp 761 rquotad

100011 2 tcp 761 rquotad

100021 0 udp 688 nlockmgr

100021 1 udp 688 nlockmgr

100021 3 udp 688 nlockmgr

100021 4 udp 688 nlockmgr

100021 0 tcp 755 nlockmgr

100021 1 tcp 755 nlockmgr

100021 3 tcp 755 nlockmgr

100021 4 tcp 755 nlockmgr



on client sail, I use the above information in several rpcinfo calls to learn more:

sail:/Users/walker>rpcinfo -u mast.ucsd.edu 100000

rpcinfo: RPC: Program not registered

program 100000 is not available

sail:/Users/walker>rpcinfo -n 111 -u mast.ucsd.edu 100000

program 100000 version 2 ready and waiting

program 100000 version 3 ready and waiting

program 100000 version 4 ready and waiting


So it would appear that the default port number that is supposed to be resolved by the portmapper on the client side is not actually correct. So I need to force rpcinfo to look at port 111. Is that correct? If so, how do I do this in Disk Utility (I use Disk Utility on client to mount NFS shares)?


Also, I tried TCP:

sail:/Users/walker>rpcinfo -t mast.ucsd.edu 100000

rpcinfo: RPC: Program not registered

program 100000 is not available

sail:/Users/walker>rpcinfo -n 111 -t mast.ucsd.edu 100000

program 100000 version 2 ready and waiting

program 100000 version 3 ready and waiting

program 100000 version 4 ready and waiting


Same port 111. Is that normal? Are several programs all running to use the same port normal?


Thank you,

Kris

Mar 7, 2012 11:39 AM in response to ktwalker69

You can tell I'm desparate. 🙂


Here is more information. I tried to manually mount the share on the client using mount_nfs specifying the 111 port number that I gleaned from the information in the previous post. But still does not work:


sail.ucsd.edu:/mnt>sudo mount_nfs -o mountport=111 mast.ucsd.edu:/Volumes/L2A/G2S /mnt/test

mount_nfs: can't mount /Volumes/L2A/G2S from mast.ucsd.edu onto /mnt/test: RPC prog. not avail

sail.ucsd.edu:/mnt>sudo mount_nfs -o port=111 mast.ucsd.edu:/Volumes/L2A/G2S /mnt/test

mount_nfs: can't mount /Volumes/L2A/G2S from mast.ucsd.edu onto /mnt/test: RPC prog. not avail

sail.ucsd.edu:/mnt>sudo mount_nfs -o resvport mast.ucsd.edu:/Volumes/L2A/G2S /mnt/test

mount_nfs: can't mount /Volumes/L2A/G2S from mast.ucsd.edu onto /mnt/test: RPC prog. not avail


I did not know which option to use (so tried "mountport", "port", and "resvport").


Any ideas from Apple Networking exports?


Kris

Mar 7, 2012 5:01 PM in response to Grant Bennet-Alder

Problem identified, but not understood. This sounds like a bug in Lion. Read on if interested.


At face value, it would seem that Apple, in the Lion release, reinterpreted the order of implementation of /etc/hosts.allow and /etc/hosts.deny for the purposes of NFS connections. I have no problem exporting and mounting a folder when I disable the "ALL:ALL" in my /etc/hosts.deny file. Entries in hosts.allow normally take precedence over contents in hosts.deny. It has for many years been this way. But that is not the case, now, for the NFS connection (but it is still the case for the few other wrapped services like sshd). Just to be clear, if I do this:


hosts.deny -

ALL:ALL


hosts.allow -

ALL:ALL


Lion nfsd will *not* export the folder to the client "sail". If I disable both hosts.allow,deny or just disable hosts.deny, then it works.


However...when I specify the client, by hostname, in both the hosts.deny file and hosts.allow file,


hosts.deny -

ALL: sail.ucsd.edu


hosts.allow -

ALL: sail.ucsd.edu


then I *can* also mount the disk. Confused yet? Something else is going on under the hood of Lion that is not apparent. Both client and host have well defined IP addresses visible on the network and registered by the DNS server as verified by "host <hostname>". This problem means that I loose the ability to use tcpwrapping to block out 99.99% of the world while still opening it up to several hundred computers on my local network easily. As far as I can tell, one cannot do the same in the "Sharing" GUI in System Preferences.


My guess is that most people that have NSF Manager working on Lion are not implementing tcpwrapping using hosts.deny, and therefore have not experienced this new problem, which is *not* a problem on Snow Leopard.


Kris

NFS Manager

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.