Skip to contentSkip to conversation

NFS: Problem with user and group IDs

DISCUSSION Thomas Babut 2 participants 2 messages Jun 1, 2004

lore
Share & tools
lore
#0 lore raw

Hi,

I've got a problem with 'squashing' user and group IDs under NFS.

On the NFS Server there is the directory /data/test with owner ID 1011 and group ID 100.

Here is the /etc/exports file on the NFS server:
/data/test 172.16.10.1(ro,root_squash,all_squash,anon_uid=65534,anongid=65534)

On the client side I mount it with the command:
mount -t nfs 172.16.10.2:/data/test /mnt/test

After it has been successfully mounted, the directory on the client system has the owner ID 1011 and group ID 100, like on the server.

But the expected result for me is, that on the client system the directory has owner ID 65534 and group ID 65534 like it has been set in the /etc/exports file on the server. I tried less options in the exports file as well. The result is always the same. With squash and without squash options.

Client and Server are Debian woody. I tried this on a Debian sid (unstable) system as well, same results. Switching from nfs-kernel-server to nfs-user-server didn't change anything, too.

My question is now: Is this a bug, or I am doing something wrong?

Thanks for any answer.

Regards,
Thomas Babut

#1 lore raw
Quoted 12 lines · Thomas Babut

I've got a problem with 'squashing' user and group IDs under NFS.

On the NFS Server there is the directory /data/test with owner ID 1011 and group ID 100.

Here is the /etc/exports file on the NFS server:
/data/test 172.16.10.1(ro,root_squash,all_squash,anon_uid=65534,anongid=65534)

On the client side I mount it with the command:
mount -t nfs 172.16.10.2:/data/test /mnt/test

Quoted 6 lines

After it has been successfully mounted, the directory on the client system has the owner ID 1011 and group ID 100, like on the server.

But the expected result for me is, that on the client system the directory has owner ID 65534 and group ID 65534 like it has been set in the /etc/exports file on the server.

Root-squashing only modifies the way your client credentials are seen on the server; it isn't applied to uid's that are returned to the client e.g. when listing a directory. So if you create a new file as a user on the client, that new file will be given anonymous uid and gid. But if you "ls" a directory, the uid's you see will be unaffected by squashing.

--Bruce Fields