Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Edited, as the situation changed a little bit.

I'm trying to share a directory on my NAS device(WD Mybook WE) with NFS to another machine on my local network. The directory on the NAS device looks like this:

drwxr-x---   15 git      git          4096 Nov 17 01:05 git/

And id's of the user git on the NAS device is like this:

[root@myhost DataVolume]# id git
uid=505(git) gid=505(git)

I played with many different parameters in the /etc/exports file and this is what I got there currently:

/DataVolume/git 192.168.0.20(async,rw,no_root_squash)

On the client side I have the user git and group git with the same id's to match the ones on the server.

user@myclient:~$ id git
uid=505(git) gid=505(git) groups=505(git)

I mount the directory with:

sudo mount myhost:/DataVolume/git -t nfs git/

and the mounted directory looks like:

drwxr-x--- 15 git    git       4096 Nov 17 01:05 git

After these steps I can access to this directory from the client with the root user with r/w permissions. But user git on the client still cannot even cd into that directory. The git user has the same uid and gid on both devices and as you can see the directory is owned by that user.

Thanks in advance for any help.

share|improve this question

3 Answers 3

Verify that the directory actually is exported with no_root_squash:

grep git /proc/fs/nfs/exports

Do you have SELinux enabled on client or server? If so, try disabling it (or set the policy to permissive), then restart nfsd and remount the share.

What do your logs (client and server) say about this?

Edit:

Do you see the mounts/exports when you run showmount -a server and showmount -e server on the client?

Do you get ready and waiting responses when running the following three commands on the client?

  • rpcinfo -T udp server nfs
  • rpcinfo -T udp server mountd
  • rpcinfo -T udp server nlockmgr
share|improve this answer
    
I confirmed through /proc/fs/nfs/exports that no_root_squash is enabled. /var/log/nfs on the server is empty and in /var/log/messages says authenticated mount request from the client, nothing else. –  rgngl Nov 18 '12 at 13:32
    
Plus, sestatus is not present on the server so I assume there's no SELinux installation. –  rgngl Nov 18 '12 at 13:33
    
@rgngl See updated answer. –  Ansgar Wiechers Nov 18 '12 at 22:03
    
Hi, the situation has changed a bit. I updated my question. Now I have r/w access from the client when I'm logged in there as root. But with the git user, I still get the permission denied error. –  rgngl Nov 19 '12 at 17:04
    
You may give no_all_squash a try (no_root_squash is irrelevant - root already has access). Also, as root on the client, you could try "chown git.git git". Also, adding a unique "fsid=" to each export is essential in many environments. The value doesn't need to be zero, just make sure all are unique (e.g. 1st export fsid=10, 2nd export fsid=20, etc.) –  nod Oct 3 '13 at 1:49

You should check the sylog for more information on why you're getting the Access Denied error. Run the following command to check what log files have recently been edited, and then check the last lines of those files.

ls -latr /var/log/

I once had the same problem with NFS, everything seemed to be set up right, but whatever I did I always got an "access denied by server while mounting xxx" error. The logs showed an "Illegal Port" error and I solved it by adding the option "insecure" to the exports file, ie:

/DataVolume/git 192.168.0.20(async,rw,no_root_squash,no_subtree_check,insecure)

Try that and see if it gets you any closer.

share|improve this answer
    
I don't get any error during mount operation, it seems to mount fine. From the log folder I only see the messages file is updated. It says the mount authentication was successful. –  rgngl Nov 18 '12 at 15:00
    
Oh, I'm sorry, I completely misunderstood your problem. I usually mount with the parameter "-o rw,soft", maybe you can try that? –  yzfr1 Nov 18 '12 at 15:24

Using fsid=0 in export options may help for accessing files and directories with no read permission for others. See - http://softpanorama.net/Net/Linux_networking/Suse_networking/suse_nfs.shtml

share|improve this answer

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.