NFS挂载目录的用户权限

NFS挂载目录的用户权限

我有oracle linux 6.7,Windows中的NFS服务器,我试图在Linux中挂载共享文件夹。

Windows NFS 服务器有一个共享挂载:

192.168.1.10:/OracleBK

在我的 Oracle Linux 服务器中,我创建了一个文件夹 /orabackup,来自 oinstall 组的 Oracle 用户是该文件夹的所有者:

mkdir /orabackup
chown -R oracle:oinstall /orabackup
chmod -R 777 /orabackup
mount -t nfs -o rw 192.168.1.10:/OracleBK /orabackup

/etc/fstab对应的行是

192.168.1.10:/OracleBK /orabackup nfs defaults 0 0

挂载所用文件夹的命令是:

mount /orabackup

现在,“orabackup”文件夹已挂载。

但oracle用户无法读写,需要对该目录有读写权限。 root用户可以读写。

应该怎么做才能给oracle用户完全权限?

答案1

NFS 根据用户 ID (UID) 检查访问权限。本地计算机上用户的 UID 需要与您尝试在服务器上访问的文件所有者的 UID 相匹配。

我建议去服务器查看文件权限。id username它们属于哪个 UID(用 查找)以及设置了哪些权限?

如果您是唯一访问服务器上文件的人,您可以让服务器假装所有请求都来自正确的 UID。为此,NFS 有选项all_squash。它告诉服务器将所有请求映射到由 anonuid,anongid 指定的匿名用户。

添加这些选项:all_squash,anonuid=1026,anongid=100/etc/exports.

但请注意,这将使安装导出的任何人有效地成为这些文件的所有者。

答案2

您在挂载点上设置属性,但它们没有多大作用。你需要做

chown -R oracle:oinstall /orabackup
chmod -R 777 /orabackup

再次(作为root)mount /orabackup,设置共享文件夹的属性。

相关内容