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 設定がそれぞれnobody
およびに対応していることを確認しましたnogroup
。
$ 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 共有に接続するには、共有を insecure フラグで定義する必要があります。これは、非標準ポート (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
うまくいくはずです!