我在实验室的服务器上安装了 NFS,该服务器导出两个磁盘,/disk1 和 /disk2,我可以使用以下命令成功查看导出的驱动器:
showmount -e 192.168.1.245
我还可以安装驱动器:
mount 192.168.1.245:/disk1 /disk1
这为我在本地计算机(也是 NetBSD 9.3)/disk1 上提供了一个已安装的驱动器
但是,我无法添加、删除或修改文件,我得到:
touch: notes.txt: Permission denied
用于挂载点的本地文件夹由用户 user(非 root)拥有,服务器上 /disk1 和 /disk2 的挂载点也由名为 user(非 root)的用户拥有,相同的组和 uid, 1000和100。
这是我的 /etc/exports 文件:
/data1 -alldirs -mapall=1000:100 -network 192.168.1.245 -mask 255.255.255.0
/data2 -alldirs -mapall=1000:100 -network 192.168.1.245 -mask 255.255.255.0
我已经尝试以 root 身份安装,无论是在本地还是在服务器上,我也尝试了与用户相同的操作,似乎没有任何帮助,非常感谢任何帮助!
更新 我不知道是什么修复了它,但现在一切正常,我尝试卸载驱动器并再次安装,重新启动服务器等。一切仍然有效,相同的 /etc/exports 文件,没有更改,相同的用户和权限。
从理论上讲,我认为这应该有效,但不幸的是,有太多潜在的原因,
EACCES
仅凭您迄今为止提供的信息很难确定这种情况下的特定原因。你可以尝试把这个选项去掉
-mapall
。我从未在我创建或管理的任何配置中使用过它,并且根据您对服务器上文件系统权限的描述,这应该是不必要的。但是,请编辑您的问题以添加挂载后在服务器和客户端上运行的以下命令的输出,并将其运行为
user
:也许这些信息会让问题变得显而易见。