Arquivos montados sobre NFSv4 são de propriedade de 4294967294, UIDs e GIDs correspondem

22

Eu tenho duas máquinas linux idênticas (imagens idênticas lançadas no amazon EC2) e estou tentando montar um diretório exportado através do NFSv4. Aqui está o que o diretório montado parece na máquina do cliente:

root@server:~# ls -l /websites/
drwxr-xr-x  6 4294967294 4294967294   92 2010-01-01 20:21 logs
drwxr-xr-x  2 4294967294 4294967294   20 2009-12-23 01:14 monit.d
...

Eu verifiquei novamente se os UIDs estavam correspondendo

Aqui está o comando mount que eu executo no cliente

/sbin/mount.nfs4 $MASTER_DN:/ /websites -o rw,_netdev,async

E aqui está a entrada /etc/exports na máquina do servidor:

/websites 10.0.0.0/8(fsid=0,no_subtree_check,rw,no_root_squash)
    
por jberryman 01.01.2010 / 23:37

5 respostas

7

Conforme explicado em UID / GID com NFS e ZFS , O NFSv4 não usa UIDs. Eu estava tendo um problema semelhante e consegui contorná-lo usando o NFSv3. Isso apenas inclui a adição de -o vers=3 ao comando mount . É claro que, se você precisar usar o NFSv4, essa resposta não será muito útil para você.

    
por 16.02.2011 / 20:16
7

leia aqui link

Se os nomes de domínio do servidor e do cliente NFSv4 não corresponderem, todos os nomes de usuários serão exibidos como "nobody".

  1. edite o /etc/idmapd.conf e defina Domínio no servidor e no cliente para o "localdomain"

    [Geral]

    Domínio = domínio local

    [Tradução]

    Método = nsswitch

  2. altere o arquivo / etc / default / nfs-common (no servidor e no cliente): configure NEED_IDMAPD = yes

  3. inicie o serviço idmapd

por 14.06.2011 / 08:18
6

Este é um problema de mapeamento de id do usuário. Por alguma razão, o sistema está usando a conta "nobody" em vez dos IDs da conta verdadeira. Verifique suas opções de esmagamento e seu arquivo idmapd.conf.

Aqui está um tópico que eu encontrei que discute o problema, este link para o post de interesse, link .

FYI, 4294967294 é -2, se tratado como um inteiro assinado de 32 bits. -1 ou -2 são usados em várias distribuições do Linux para o UID de ninguém e o GID de nogroup (no arquivo passwd, o número mais alto de 16 bits, 65535, é geralmente usado).

    
por 02.01.2010 / 00:16
3

Você precisa alterar o arquivo / etc / default / nfs-common (em ambos seu servidor e cliente): set NEED_IDMAPD to yes .

Pelo menos isso me ajudou.

    
por 05.10.2010 / 18:11
2

Estamos usando as opções de NFS anonuid e anongid para definir os IDs de usuário / grupo que o servidor usará para arquivos criados por anônimos. Se estes não estiverem configurados, "nobody" e "nogroup" serão usados - o que pode variar dependendo da versão e distribuição do sistema operacional. Então um

/websites 10.0.0.0/8 
    (fsid=0,no_subtree_check,rw,no_root_squash,anonuid=1001,anongid=1001)
                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^

pode fazer o truque (com 1001 sendo um UID / GID válido e utilizável no seu servidor).

    
por 19.01.2011 / 10:34