Answers:
按照Ubuntu NFS指南安装NFS服务器:
sudo apt-get install nfs-kernel-server
编辑/etc/exports
:
sudo nano /etc/exports
现在添加类似于以下内容的行:
/home/ubuntu 172.16.238.0/24(insecure,rw,all_squash,anonuid=1000,anongid=1000,no_subtree_check)
/home/ubuntu
是要导出的目录172.16.238.0/24
是接受连接的IP地址。Mac客户端的IP地址应在此范围内。使用*
允许从任何IP地址。(但是请注意不要使您的NFS服务器可用于整个Internet!)insecure
表示接受来自非特权(较高)端口号的连接rw
表示读写all_squash,anonuid=1000,anongid=1000
强制所有读写由具有UID / GID 1000(1000是ubuntu
我的服务器上的默认用户/组)的用户/组执行。id
在服务器上运行以查找您的UID / GID。您需要这些选项,除非您的Ubuntu服务器和Mac客户端对主要用户使用相同的UID / GID。no_subtree_check
是表演的东西保存文件并运行
sudo exportfs -vra
重新加载NFS导出。(我不确定该-a
选项是否必要。)
编辑auto_master文件:
sudo nano /etc/auto_master
并将行开头更改/net
为以下内容:
/net -hosts -nobrowse,nosuid,locallocks,nfc,actimeo=1
locallocks
在客户端而不是服务器上创建锁。没有此功能,Finder会变得非常缓慢,并且永远需要显示目录。nfc
使UTF-8文件名起作用actimeo=1
将属性缓存超时设置得尽可能短。请注意,将其设置为0
(或添加noac
)会使Finder在服务器上删除文件时不会注意到,因此我们无法使用它。nfsvers=4
这里使用。我在Mac上出现了内核恐慌,因此我回到了默认设置(NFSv3)。通过运行刷新自动挂载
sudo automount -vc
(如果您以前尝试挂载NFS卷,首先卸载它,就像这样:sudo umount -f /net/fileserver.local/home/ubuntu
)
在Finder菜单中,选择转到->转到文件夹,然后输入/net/SERVER_HOST_NAME
,例如/net/fileserver.local
。
您应该在其中找到导出的目录,例如在/net/fileserver.local/home/ubuntu
。将此目录拖到Finder侧边栏中,以方便将来访问。
all_squash,anonuid=1000,anongid=1000
选项为我处理权限-Ubuntu 客户端上UID 1000拥有的所有内容都可以从Mac客户端访问,所以没有问题,因此无需更改为777。–
sudo mount -t nfs -o resvport 172.16.238.x:/home/ubuntu /Users/xyz/ubuntu
rsync
)非MacOS服务器时,“ nfc”部分是CRUCIAL 。最初您不会注意到,但是OS X上的UTF-8不同于其他地方。没有它,您的文件名很可能会出现乱码,并且需要数小时才能修复。我知道我不能用评论说“谢谢”,所以在这里就结束了;)