both server and client are running Oracle linux. on NFS server, Oracle uid=1000, oinstall gid=501, on NFS client Oralce uid = 1000; oinstall gid=1001. Without changing uid and gid on either side, can I export a file system (owned by oracle:oinstall) on the server, and mount the file system , and keep it as owned by "oracle:oinstall" on the client as well? what options should I use in /etc/exports on the server, and in /etc/fstab on the client? On linux, there is no "nosuid" option.
the problems is now is: if I mount the file system on the client, it will be owned by 1000:501, and it won't translate to "oracle:oinstall", and even root is not able to change the ownership.
It really got me on this, and Thanks for your inputs.
Edited by: 943714 on Aug 27, 2012 2:53 PM
Different versions of Oracle Linux or NFS have different problems and solutions. There are 3 versions of NFS. It is impossible from your post to determine what you are using.
I suggest you look into rpc.idmapd (man rpc.idmapd), which provides mapping between on-the-wire NFSv4 names (which are strings in the form of user@domain) and local UIDs and GIDs.
A fundamental premise of NFS is that UID/GID's are consistent throughout the "network" where the NFS servers are accessible. That's why being root on your client must be qualified before you can be root on the NFS server. That's why NIS and NIS+ were invented: centralized administration.
Using a dedicated group ID that is consistent throughout the network is the common UNIX/Linux way of sharing access (set the umask to 007 to keep stuff private).