O host
Eu tenho um host, rodando o Ubuntu 12.04, em 10.0.0.202
. Ele fornece um compartilhamento NFS para outras máquinas na rede. Aqui está o conteúdo de /etc/exports
:
/media/storagedrive 10.0.0.0/24(rw,sync,no_subtree_check)
A intenção aqui é compartilhar o conteúdo de /media/storagedrive
com outras máquinas na rede no intervalo de IP 10.0.0.0 - 10.0.0.255
.
Cliente de trabalho
Isso funciona corretamente com uma máquina cliente em 10.0.0.40
, executando o Ubuntu 13.10, conhecido como MattDev. O /etc/fstab
da máquina é assim:
UUID=8f8c838e-3ea2-457a-87f0-57b12dfab06c / ext4 errors=remount-ro 0 1
UUID=427089d4-46a2-432d-9df4-7016bdfc7df2 none swap sw 0 0
10.0.0.202:/media/storagedrive /mnt/NetworkStorageDrive nfs rsize=8192,wsize=8192,timeo=14,intr
E ls -al /mnt/
nessa máquina é assim:
total 12K
drwxr-xr-x 3 root root 4.0K Feb 4 17:48 .
drwxr-xr-x 23 root root 4.0K Feb 5 08:44 ..
drwxrwxr-x 7 root plugdev 4.0K Feb 5 11:43 NetworkStorageDrive
A saída de id
é assim:
uid=1000(matt) gid=1000(matt) groups=1000(matt),4(adm),24(cdrom),27(sudo),30(dip),33(www-data),46(plugdev),112(lpadmin),124(sambashare)
Cliente virtual não ativo
Eu tenho uma segunda máquina cliente, executando o Ubuntu 12.10, como um sistema operacional convidado em uma máquina host do Windows 7. A máquina host está na rede como 10.0.0.28
. A máquina convidada está sendo gerenciada pelo Vagrant, usando o VirtualBox 4.3.6 como um provedor. Vou ligar para o AlexDevHost, host do Windows 7, e para o convidado do Ubuntu, AlexDevGuest.
A execução de showmount -e 10.0.0.202
no AlexDevGuest produz:
Export list for 10.0.0.202:
/media/storagedrive 10.0.0.0/24
No entanto, quando tento montar o compartilhamento, ele falha:
$ sudo mount 10.0.0.202:/media/storagedrive /mnt/NetworkStorageDrive
mount.nfs: access denied by server while mounting 10.0.0.202:/media/storagedrive
Então comecei a procurar por problemas:
$ ls -alh /mnt/
total 12K
drwxr-xr-x 3 root root 4.0K Feb 5 12:23 .
drwxr-xr-x 26 root root 4.0K Feb 5 12:23 ..
drwxr-xr-x 2 root root 4.0K Feb 5 12:23 NetworkStorageDrive
$ id
uid=1001(vagrant) gid=1001(vagrant) groups=1001(vagrant)
$
Esse uid e gid é diferente do usuário matt no MattDev. Então eu fiz malabarismos sobre o uid para vagrant, pois li que o acesso NFS é controlado pela correspondência do endereço IP e dos uids. Então agora:
$ id
uid=1000(vagrant) gid=1001(vagrant) groups=1001(vagrant)
$ sudo mount 10.0.0.202:/media/storagedrive /mnt/NetworkStorageDrive
mount.nfs: access denied by server while mounting 10.0.0.202:/media/storagedrive
$
Ainda não há sucesso. Então agora estou ficando sem ideias.
- O que estou fazendo de errado?
- Se a parte do uid estiver correta, há uma maneira de verificar se a máquina do servidor NFS está vendo minha tentativa de acesso como proveniente de
10.0.0.28
e não algum outro IP que não esteja no intervalo permitido?