compartilhamentos de pastas sobre o NFSv4 private para grupos de usuários

3

Eu quero compartilhar uma pasta sobre o NFSv4, disponível para alguns usuários, e estou tendo problemas de permissão.

Eu configurei as permissões de pasta com setGID para que novos arquivos sejam criados com o proprietário do grupo de pastas. Mas os usuários são livres para criar arquivos sem permissões para o grupo (na verdade, os usuários padrão do UMASK são 700, então isso acontece o tempo todo).

Acabei tentando aplicar esta solução usando ACLs para impor umask de diretório . Eu fiz, mas não funcionou como esperado. Eu li no wiki do NFS que as ACLs regulares não funcionam sobre o NFSv4, e que eu preciso para usar ferramentas de ACL específicas do nfs4.

Mas estou tendo alguns problemas. Eu tentei instalar o nfs4-acl-tools no servidor e recebo isso:

# nfs4_getfacl /export/proyectos/
Operation to request attribute not supported.

Sim, a partição é montada com suporte ACL.

/dev/mapper/mpath4-part1 /export/proyectos ocfs2 rw,relatime,_netdev,heartbeat=local,nointr,data=ordered,errors=remount-ro,usrquota,coherency=full,user_xattr,acl 0 0

E as ACLs regulares estão funcionando:

# getfacl /export/proyectos/
getfacl: Eliminando «/» inicial en nombres de ruta absolutos
# file: export/proyectos/
# owner: root
# group: root
# flags: --t
user::rwx
group::rwx
other::rwx
default:user::rwx
default:group::rwx
default:other::rwx

Eu toquei o nfs4_getfacl como sugerido na lista de discussão e recebi o seguinte:

# strace nfs4_getfacl /export/proyectos
<stripped>
getxattr("/export/proyectos", "system.nfs4_acl", 0x0, 0) = -1 EOPNOTSUPP (Operation not supported)
<stripped>

O nfs4_getfacl está pedindo a bandeira certa? Eu pensei que o nfs4_acls não era implementado por nenhum sistema de arquivos, e atualmente o nfs4 estava contando com algum tipo de mapeamento nfs4acl-posixacl. Mas não tenho mais certeza.

    
por Jorge Suárez de Lis 27.08.2012 / 18:03

1 resposta

2

Você deve usar getfacl no servidor NFS (porque você consulta o sistema de arquivos local) e usar nfs4_getfacl quando estiver no cliente NFS.

NFSv4 ACL e Linux ACL acl (5) são padrões completamente diferentes! O servidor Linux NFS irá traduzir o ACL para frente e para trás.

Leia a postagem Nenhuma acl no nfs mount in linux? .

    
por 10.03.2015 / 01:47