在已挂载的 NFS 上创建的任何文件都具有 Nobody 权限

在已挂载的 NFS 上创建的任何文件都具有 Nobody 权限

我已经努力解决这个问题好几天了,需要一些帮助,GOOGLE 到处搜索,但还没有找到任何有用的方法。情况如下(如果我漏掉了什么,请见谅):

-有一个主系统可以与多个已安装的 HD 配合使用

-有多个具有自己的处理器的副系统,它们也安装相同的硬盘。副系统(节点?)与主系统共享主目录

-我有所有系统的 sudo 访问权限,因此我可以检查任何

-我在两个系统上创建了具有相同 UID 和 groupID 及附属组的用户(使用 id USERNAME 确认并检查两个系统上的 /etc/passwd 和 /etc/group [粘贴在下面])

  • 每当我在主系统上创建某些内容时,一切看起来都很好

  • 每当我在侧面系统上创建某些东西时,组似乎工作正常,但用户却不能。

- 系统的其他 2 名用户没有遇到我遇到的任何问题(过去 3 年他们使用起来都很好)。我刚加入团队,我们无法让它正常工作。

-我被告知它的 nfs 已安装,但我对这些事情不太熟悉,所以我没有其他详细信息

-以下是一些统计数据:

用户名 katz

唯一标识号 1019

侧系统:UBUNTU 14.04 主系统:UBUNTU 12.02

katz@SIDESYSTEM:/home/katz$ cat /etc/passwd | grep katz
katz:x:1019:1019::/home/katz/:/bin/bash

katz@MAINSYSTEM:~$ cat /etc/passwd | grep katz
katz:x:1019:1019:My Name,,,:/home/katz/:/bin/bash

然后

katz@SIDESYSTEM:/home/katz$ ls -1l | grep bk
-rw-rw-r-- 1 nobody katz          0 Jul 20 22:06 bk

katz@MAINSYSTEM:~$ pwd
/home/katz/
katz@MAINSYSTEM:~$ ls -1l | grep bk
-rw-rw-r-- 1 katz katz          0 Jul 20 22:06 bk

在阅读此网站上的其他潜在答案时,以下是其他一些可能有用的信息:

katz@SIDESYSTEM:/home/katz$ cat /etc/exports   [Some numbers replaced with Xs for privacy]
# /etc/exports: the access control list for filesystems which may be exported
#       to NFS clients.  See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
/dataXX          XX.XX.X.XX(rw,async,no_root_squash,no_subtree_check)
/dataXX          XX.XX.X.XX(rw,async,no_root_squash,no_subtree_check)
....etc.

katz@MAINSYSTEM:~$ cat /etc/exports
# /etc/exports: the access control list for filesystems which may be exported
#       to NFS clients.  See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
/home           XX.XX.X.XX(rw,async,no_root_squash,no_subtree_check)
...etc

很高兴添加其他人认为有用的任何其他信息。

答案1

您使用 NFSv3 样式语法指定了共享。在客户端上挂载时,请尝试使用 -o nfsvers=3 进行挂载

mount -t nfs 1.2.3.4:/home /home -o nfsvers=3

默认情况下,使用 NFSv4,它与 v3 兼容,因此挂载成功,但用户 ID 和权限的映射混乱。因此,要么在服务器端使用 NFSv4,要么使用该选项强制客户端使用 v3。

相关内容