Linux 和 OSX 之间的 NFS 共享问题

Linux 和 OSX 之间的 NFS 共享问题

我的 Linux 服务器上有一个目录:

/src/nfs/blah

我分享这个是为了可以安装在我的 OSX 电脑里。

/mnt/nfs/blah

/etc/exports文件如下所示:

/srv/nfs/blah 192.168.0.16(rw,no_root_squash,sync,no_subtree_check,insecure,crossmnt)

问题是我在权限方面遇到了困难,每次我在服务器端编辑内容时,我都会获得一组组和用户权限。然后,当我在 OSX 计算机上编辑文件时,我在 vim 中收到权限警告,当我强制执行时,我会保存数据,但这会引入一组新的组和权限等。

例如,在 Linux 端,我得到:

drwxrwxrwx 2 someuser someshare 4096 Jun 22 21:40 test.txt

在 Mac 端编辑后,我得到了

-rw-rw-r-- 1 501 dialout 166 Jun 22 21:40 test.txt

我可以看到存在冲突,我甚至尝试在双方创建相同的用户,但没有成功。

答案1

文件所有权以数字形式存储,而不是按名称存储,如UIDGID

UID和值通过每个系统的、GID从数字转换为名称。/etc/passwd/etc/group

在您的示例中,该文件归test.txtsomeuser(UID所有GIDgetent passwd someuser | awk --field-separator ':' '{print $3,":",$4}'

在 Mac 方面,它们相当于UIDGID映射到名称,在使用相同的UIDGID数字作为输入的情况下会产生不同的结果。

您可以使用 LDAP 同步帐户,但这似乎过于复杂。

相关内容