在MacOS客户端的Ubuntu Linux服务器上挂载NFS卷

我有一个Ubuntu 14.04 LTS服务器(在我的情况下是一个本地虚拟机)。 如何使用NFS从Mac OS X Yosemite客户端在Linux服务器上安装目录?

设置Linux服务器

  1. 根据Ubuntu NFS指南安装NFS服务器:

    sudo apt-get install nfs-kernel-server 
  2. 编辑/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服务器可用于整个互联网!)
    • insecure意味着接受来自非特权(更高)端口号的连接
    • rw表示读写
    • all_squash,anonuid=1000,anongid=1000强制所有读写操作由UID / GID 1000(1000是我服务器上默认的ubuntu用户/组)的用户/组执行。 在服务器上运行id来找出你的UID / GID。 除非您的Ubuntu服务器和Mac客户端为主用户使用相同的UID / GID,否则您需要这些选项。
    • no_subtree_check是一个performance的东西
  3. 保存该文件并运行

     sudo exportfs -vra 

    重新加载NFS导出。 (我不确定是否需要-a选项。)

设置Mac客户端

  1. 编辑auto_master文件:

     sudo nano /etc/auto_master 

    并将以/net开头的行更改为以下内容:

     /net -hosts -nobrowse,nosuid,locallocks,nfc,actimeo=1 
    • locallocks在客户端而不是在服务器上创build锁。 如果没有这个,Finder变得非常缓慢并且永远需要显示目录。
    • nfc使UTF-8文件名称工作
    • actimeo=1将属性caching超时设置得尽可能短。 请注意,将其设置为0 (或添加noac )会导致Finder在服务器上删除文件时不会注意到,所以我们无法使用它。
    • 请注意,我们在这里不使用nfsvers=4 。 我在Mac上遇到了内核恐慌,于是我又回到了默认的(NFSv3)。
  2. 通过运行刷新自动安装

     sudo automount -vc 

    (如果您以前尝试装入NFS卷,请先卸载它,如下所示: sudo umount -f /net/fileserver/home/ubuntu

  3. 在Finder菜单中,selectGo – > Go to Folder,然后input/net/SERVER_HOST_NAME ,例如/net/fileserver

    你应该find你的导出目录,例如在/net/fileserver/home/ubuntu 。 将此目录拖到Finder侧边栏,以便将来访问。