配置

配置

在 Ubuntu 17.04 版本上,我的 NFS 共享定义如下:

配置

/etc/exports

/bottle/media 192.168.0.0/16(ro,all_squash,no_subtree_check,anonuid=65534,anongid=65534) 10.3.0.0/16(rw,all_squash,sync,no_subtree_check,anonuid=65534,anongid=65534)

共享卷的 UNIX 文件权限:

$ ls -al /bottle
total 5
drwxr-xr-x  3 root   root       3 Sep  3 11:45 .
drwxr-xr-x 28 root   root    4096 Sep  3 00:37 ..
drwxrwxr-x  2 nobody nogroup    2 Sep  3 11:45 media

确认

sudo exportfs

/bottle/media   192.168.0.0/16
/bottle/media   10.3.0.0/24

检查 NFS 服务器守护进程:

$ sudo systemctl status nfs-server
● nfs-server.service - NFS server and services
   Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled; vendor preset: enabled)
   Active: active (exited) since Sun 2017-09-03 12:09:47 BST; 16min ago
  Process: 23350 ExecStopPost=/usr/sbin/exportfs -f (code=exited, status=0/SUCCESS)
  Process: 23344 ExecStopPost=/usr/sbin/exportfs -au (code=exited, status=0/SUCCESS)
  Process: 23337 ExecStop=/usr/sbin/rpc.nfsd 0 (code=exited, status=0/SUCCESS)
  Process: 23380 ExecStart=/usr/sbin/rpc.nfsd $RPCNFSDARGS (code=exited, status=0/SUCCESS)
  Process: 23374 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS)
 Main PID: 23380 (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 4915)
   Memory: 0B
      CPU: 0
   CGroup: /system.slice/nfs-server.service

Sep 03 12:09:47 monolith systemd[1]: Starting NFS server and services...
Sep 03 12:09:47 monolith systemd[1]: Started NFS server and services.

已验证 UID/GID 设置分别对应于nobodynogroup

$ id -u nobody
65534

$ getent group nogroup
nogroup:x:65534:

症状

NFS 服务器主机位于10.3.0.100。客户端 (OSX Sierra v10.12.6) 位于10.3.0.102

我尝试使用 Finder 的“连接到服务器”对话框 () 进行连接cmd + k,并在其中输入nfs://10.3.0.100

这样做会产生以下错误: You do not have permission to access this server

这是配置问题吗?我做错了什么?

答案1

为了使用 MacOS 连接到 NFS 共享,必须使用不安全标志定义共享。这意味着它允许从非标准端口(macOS 使用)进行连接。因此您的导出行将如下所示。

10.3.0.0/16 (rw,all_squash,sync,no_subtree_check,anonuid=65534,anongid=65534,insecure)

另外,从 mac 连接时(尤其是在 nfsv3 上),您必须连接到特定的导出文件夹,而不是根文件夹或仅仅是 IP。

nfs://10.3.0.100/bottle/media

应该可以解决问题!

相关内容