我有一个带有 nfs 共享的 readynas。我有一堆无法写入共享的文件。它们属于 nobody:nogroup,如果我尝试 chown 它们,我会得到
chown: changing ownership of `myfile': Operation not permitted
即使我以 root 身份运行它也是如此。我已经尝试过我的 /etc/fstab,但现在我的方法是这样的:
192.168.1.25:/media /media/readynas nfs defaults 0 0
我还尝试对 readynas 上的 /etc/exports 文件进行一些修改,以免影响 root 的写入能力
"/media" *(insecure,insecure_locks,rw,async) mattr-desktop(insecure,insecure_locks,rw,no_root_squash,async)
我不知道下一步该做什么,所以任何建议都会很感激。NFS 共享上有许多文件我可以写入,我可以写入新文件,所以我不确定为什么无人拥有的文件不可写或不可拥有。我可以将文件移动到本地驱动器,在那里对它们进行 chown,然后再将它们移回,它们也可以正常工作。
答案1
这肯定与 root_squash 有关。
我想象您已经阅读过root_squash
,但为了完整性...
实际上,它将 的特权 UID 和 GID 重新映射0
到 的权限65534
,通常是用户nobody
。因此,如果root
要在压缩共享上创建文件,它将归 拥有nobody
。这带来了一些安全优势 - 虽然可能不是很多,因为root
NFS 客户端上的用户可以模拟任何其他 UID。
针对您的问题,您确定正在使用第二个导出组吗?自从选项更改后,共享是否已重新导出?NFS 服务器是否能够正确解析主机名mattr-desktop
?
如果所有这些问题的答案都是“是”,那么这很奇怪。您可能希望尝试这些选项,anonuid=0,anongid=0
只是为了解决该文件的权限问题。