我想在运行 Raspbian Stretch 的 Raspberry Pi 上挂载目录,并使用 nfs 在 macOS 上访问。
/etc/exports
Pi 上包含
/home/pi *(rw,sync,no_subtree_check)
我可以使用以下命令在 macOS 上成功挂载共享
sudo mount -t nfs -o resvport,rw IP:/home/pi mountpoint
这将以用户 1000 的身份挂载文件,我可以访问这些文件,但不能写入或删除。
sudo mount -t nfs -o noowners,resvport,rw IP:/home/pi mountpoint
以当前 macOS 用户身份挂载文件,但我仍然无法写入或删除。
macOS 用户的uid
是 501。理想情况下,我想配置系统以允许我的 Mac 用户具有与 pi 用户相同的访问权限,而无需向home
所有人开放整个目录。
答案1
感谢 Mark Plotnick 的提示,阅读了非常令人困惑的手册页和大量的实验,我终于使用以下内容让它工作了/etc/exports
/home/pi *(rw,sync,no_subtree_check)
/home/pi zaphod.local(rw,sync,no_subtree_check,all_squash,anonuid=1000,anongid=1000)
zaphod.local
是我的 Mac,这将uid
和映射gid
到 pi 用户的。
其他pi
用户可以正常访问,但其他用户只能读取文件。