Permissões de diretório padrão sobre o NFS

5

Eu tenho dois servidores, client e server em funções bastante óbvias: server hospeda o compartilhamento NFS e client o monta. Há um grupo compartilhado entre vários usuários em client chamado shared , que também existe em server . Minhas permissões em server para o compartilhamento são assim:

user@server $ ls -al /export/share/
drwxrwsr-x+ 3 shared shared    4096 Apr 19 01:25 .
drwxr-xr-x  3 root  root       4096 Apr 12 20:10 ..

O objetivo é bem claro, gostaria que todos os membros do grupo shared pudessem criar, gravar e excluir arquivos nesse diretório. No cliente, um ls -la do diretório montado leva os mesmos resultados.

O arquivo de exportações do NFS em server se parece com isto:

/export/share 10.0.0.0/24(rw,nohide,insecure,no_subtree_check,async)

A montagem em client in /etc/fstab tem esta aparência:

10.0.0.1:/export/share /mnt/share nfs _netdev,noatime,intr,auto 0 0 

A saída de mount de client :

10.0.0.1:/export/share on /mnt/streams type nfs (rw,noatime,intr,vers=4,addr=10.0.0.1,clientaddr=10.0.0.2)

No entanto, ainda não consigo criar arquivos nesse diretório usando um usuário do grupo.

Por exemplo, um usuário jack :

user@server $ id jack
uid=1001(jack) gid=1001(jack) groups=1001(jack),1010(shared)

Se eu tentar tocar em um arquivo na pasta montada em client , a permissão será negada:

user@client $ sudo -u jack touch /mnt/share/a
touch: cannot touch '/mnt/share/a': Permission denied

Por que isso não está funcionando como esperado? Não devo ser capaz de criar arquivos e pastas como jack nesta pasta, pois ele é membro do grupo shared ?

    
por Naftuli Kay 19.04.2013 / 17:26

2 respostas

3

Como você está divulgando as informações de usuário / grupo contidas em /etc/passwd e / etc / group? Você normalmente precisa usar NIS, LDAP ou rsync os arquivos /etc/passwd /etc/group para todas as máquinas que estão automontando essas montagens. Caso contrário, os clientes não sabem nada sobre as permissões no sistema de arquivos.

Você pode querer ler o NIS Howto .

    
por 19.04.2013 / 17:36
1

O NFS trabalha com "groupid" e "userid", os números reais não os nomes. Certifique-se de que grupos e usuários tenham o mesmo ID no servidor e no cliente. Verifique /etc/passwd e /etc/group no servidor e no cliente. Uma configuração ideal é ter todos os usuários e grupos compartilhados no servidor NIS ou LDAP.

    
por 19.04.2013 / 17:37