Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

On my Ubuntu system, I have this line in /etc/fstab:

myserver:/home/me /mnt/me nfs rsize=8192,wsize=8192,timeo=14,intr

When I do

sudo mount -a

I get:

mount.nfs: access denied by server while mounting myserver:/home/me

How can I diagnose this problem? The nfs server is also Ubuntu.

Additional details: I am able to mount this nfs share from other Ubuntu clients on the same network with no problem. However, the problematic client is different in that it is running inside VirtualBox on a Windows system. I can ping "myserver" fine from the problematic client.

EDIT: /etc/exports on "myserver":

/home/me *(rw,all_squash,async,no_subtree_check,anonuid=1000,anongid=1000)

/etc/hosts.allow and /etc/hosts.deny on "myserver" are both all comments. And keep in mind, that I can connect fine from other clients on the same network.

share|improve this question
    
have you tried tailing the log files on the remote ubuntu nfs server? See if an attempt is being made to nfs mount from the virtual machine on the windows box. –  Patrick R Jan 29 '10 at 14:47
    
which log files exactly? –  JoelFan Jan 29 '10 at 15:39
    
Is anything showing up in /var/log/messages? –  Matt Simmons Jan 29 '10 at 16:35
add comment

6 Answers 6

up vote 10 down vote accepted

Found it!

One of the logs had the line:

refused mount request from 192.168.1.108 for /home/me (/home/me): illegal port 64112

I googled and found that since the port is over 1024 I needed to add the "insecure" option to the relevant line in /etc/exports on the server. Once I did that (and ran exportfs -r), the mount -a on the client worked.

share|improve this answer
1  
While that works, now any non-root user can pretend to be a new instance of NFS and have access to all your files. Does anyone know if theres a way to just get the nfs client to stop using these high port numbers? –  semi Mar 5 '11 at 1:10
    
Thanks so much for this, saved my ass. Was ready to give up after HOURS of googling. I didn't see it in the logs because I was grepping for "nfs", but this is actually logged my "mountd". –  Cory J Aug 2 '11 at 5:47
    
@Cory J, thanks for taking the time to let me know it helped! Your comment made me take another look at this question and I see it has over 12K views! So probably it helped other people to but you are the only one that said "thanks"! :) –  JoelFan Aug 2 '11 at 14:50
add comment

Guess what... for me, the source of exactly the same error was a version mismatch between my NFS client and the server.

The logs were silent as if nothing happened, and only nfswatch running on the server side helped me clarify the situation.

The problem was resolved by adding the nfsver mount option on the client side:

server:/path   /mount/point   nfs   nfsvers=3   0 0
share|improve this answer
    
This was also my problem. Debian 6 (Squeeze) with mount package v2.17.2-9 installed. Solution worked. –  Alastair Irvine 1 hour ago
add comment

Have you verified that the name resolution is correct on the server for the client that is trying to connect (and is listed in the exports file)?

share|improve this answer
    
see my edits in the question... I am allowing all –  JoelFan Jan 29 '10 at 15:56
add comment

check the files hosts.allow and hosts.deny and whether the client is entered correctly. when this does not help, please post your export file.

share|improve this answer
    
see my edits in the question –  JoelFan Jan 29 '10 at 15:59
add comment

This question is related on how the network is set for your vm.

By default with VirtualBox, you have NAT network. Which result in port translation.

Step by step this gives :

  1. The NFS client is using a reserved port (<1024 ... that can only be opened by root -> secured)
  2. Virtualbox does the port translation (NAT) -> client port is now greater than 1024
  3. The NFS server refuses the connection for that insecure port.

As mentioned by @JoelFan, one fix would be to set the insecure option to the server. This is a quick fix but ... insecure ;)

What fixed the case for me (in a secured manner) was to change from NAT to Bridge network for this vm. This way, my vm has it's own IP address and no port translation is done.

share|improve this answer
add comment

In case this helps other people, I have a Synology NAS and the NFS point actually added another item to the path.

I was trying to mount "xxx.xxx.xxx.xxx/folder" as this is what I do in Windows. But for Ubuntu with NFS I had to use "xxx.xxx.xxx.xxx/volume1/folder".

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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