No Ubuntu versão 17.04, meus compartilhamentos NFS são definidos da seguinte forma:
Configuração
Em /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)
Permissões de arquivo UNIX para o volume compartilhado:
$ 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
Verificação
Corrido sudo exportfs
:
/bottle/media 192.168.0.0/16
/bottle/media 10.3.0.0/24
Verificou o daemon do servidor 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.
Verificado se as configurações UID/GID correspondem a nobody
e nogroup
, respectivamente:
$ id -u nobody
65534
$ getent group nogroup
nogroup:x:65534:
Sintomas
O host do servidor NFS está localizado em 10.3.0.100
. O cliente (OSX Sierra v10.12.6) está em 10.3.0.102
.
Tentei uma conexão usando a caixa de diálogo "Conectar ao servidor" do Finder ( cmd + k
), na qual entrei nfs://10.3.0.100
.
Fazer isso gera o seguinte erro: You do not have permission to access this server
.
Isso é um problema de configuração? O que eu fiz errado?
Responder1
Para conectar-se ao compartilhamento NFS com MacOS, o compartilhamento deve ser definido com o sinalizador inseguro. Tudo o que isso significa é permitir uma conexão de uma porta não padrão (que o macOS usa). Portanto, sua linha de exportação ficaria assim.
10.3.0.0/16 (rw,all_squash,sync,no_subtree_check,anonuid=65534,anongid=65534,insecure)
Além disso, ao conectar-se do Mac (especialmente no nfsv3), você deve se conectar a uma pasta exportada específica, em vez da pasta raiz ou apenas ao IP.
nfs://10.3.0.100/bottle/media
Deve resolver o problema!