O cliente NFS não está ignorando os UIDs no mapa NFS

1

Eu tenho seis máquinas, um servidor NFS e cinco clientes. Três clientes (executando o Ubuntu 14.04) funcionam bem. Os outros dois, executando 12.04, estão executando erros de permissão.

Na máquina cliente mapeada, ls -l /home/ retorna:

drwxr-xr-x 22 testuser     testuser     12288 Oct  9 18:03 testuser

Esta é a configuração de permissões esperada. testuser é o usuário que precisa de permissão para essa pasta.

Mas, quando conectado a testuser , quando eu touch /home/testuser/test.txt recebo este erro:

touch: cannot touch '/home/testuser/test.txt': Permission denied

Agora, os IDs numéricos NÃO correspondem às strings de ID, mas Me disseram que isso não precisa ser o caso.

Configurações do cliente:

cat /sys/module/nfs/parameters/nfs4_disable_idmapping
N 

A configuração acima permite que o NFS mapeie as permissões do usuário usando strings, não UIDs numéricos e GIDs.

cat /etc/idmapd.conf
[General]

Verbosity = 0
Pipefs-Directory = /run/rpc_pipefs
# set your own domain here, if id differs from FQDN minus hostname
Domain = localdomain

[Mapping]

Nobody-User = nobody
Nobody-Group = nogroup

Configurações do servidor:

cat /etc/exports

/raid/nfs/home        server1(rw,sync,no_root_squash,no_subtree_check)
/raid/nfs/home        server2(rw,sync,no_root_squash,no_subtree_check)

Existe algum bug ou etapa extra que preciso fazer para que as máquinas 12.04 funcionem corretamente? Ou devo apenas morder a bala e atualizar, ou apenas mudar todos os UIDs para combinar com o servidor?

    
por Ben Gibson 12.10.2015 / 02:59

1 resposta

1

o problema é que idmapd está envolvido apenas quando você faz GETATTR / SETATTR (stat, chown, setacl) ou kerberos é usado (para o principal para o mapeamento id). Mas quando o cliente nfs envia um pedido CREATE com auth = sys, então o uid e o gid são retirados da mensagem RPC. Então você precisa de uid e gid match no servidor e no cliente para resolver seu problema de permissão.

    
por 13.10.2015 / 15:18