O que há de errado com minha configuração do NFS?

2

Eu já tinha sido capaz de configurar um servidor NFS em um computador executando o CentOS 6.6 e de montar o sistema de arquivos em uma máquina virtual com o mesmo sistema operacional e usando autofs .
Na semana passada eu fiz uma nova instalação de todos os sistemas operacionais que eu tinha, e agora, por algum motivo, não consigo fazer funcionar. O computador servidor ainda roda o CentOS 6.6, e a máquina virtual agora está rodando o CentOS 7 (eu também tentei com outra máquina virtual rodando Debian Wheezy, mas ainda não funcionou).

O servidor ( centosserv ) está sendo executado em 192.168.1.89 e o cliente ( centoscli , o CentOS 7) em 192.168.1.100.
O sistema de arquivos que eu quero compartilhar é /NFSSHARE e /NFSSHARE/mydir e, como tal, o arquivo /etc/exports no servidor contém o seguinte:

/NFSSHARE       192.168.1.100(fsid=0,rw,sync,no_subtree_check,root_squash,anonuid=1000,anongid=1000)
/NFSSHARE/mydir 192.168.1.100(ro,sync,no_subtree_check)

Se eu executar showmount -e , obtenho isto:

[root@centosserv ~]# showmount -e
Export list for centosserv:
/NFSSHARE/mydir 192.168.1.100
/NFSSHARE       192.168.1.100

Então, tudo parece bem até agora.
No lado do cliente, editei o /etc/auto.master para incluir a seguinte linha:

/mnt/nfs       /etc/auto.nfs-share       --timeout=90

E, em seguida, criou o arquivo /etc/auto.nfs-share com o seguinte conteúdo:

[root@centoscli ~]# cat /etc/auto.nfs-share
writeable_share        -rw 192.168.1.89:/
non_writeable_share    -ro 192.168.1.89:/mydir

Isso também parece estar funcionando, dada a saída abaixo:

[root@centoscli ~]# mount | grep nfs-share
/etc/auto.nfs-share on /mnt/nfs type autofs (rw,relatime,fd=18,pgrp=2401,timeout=90,minproto=5,maxproto=5,indirect)

Neste ponto, /mnt/nfs/writeable_share e /mnt/nfs/non_writeable_share não estão montados, a menos que eu tente acessá-los diretamente, conforme este tutorial (que é o mesmo que eu havia seguido na última vez que configurei o servidor NFS *). Então, só depois que eu tentei ls -l /mnt/nfs/writeable_share deve ser montado. Mas a saída que recebo é:

[root@centoscli ~]# ls -l /mnt/nfs/writeable_share
ls: cannot access /mnt/nfs/writeable_share: No such file or directory

Eu ping o servidor do cliente e vice-versa, apenas para verificar se eles poderiam chegar um ao outro, e eles parecem fazer.

Eu fiz tudo exatamente da mesma maneira que fiz na primeira vez, mas por alguma razão não consigo fazer funcionar dessa vez. Eu tentei fazer isso editando o arquivo /etc/fstab no lado do cliente e manualmente em vez de usar autofs , mas também não parece funcionar dessa maneira. Desativar iptables no lado do servidor faz com que ele funcione com fstab e manualmente, mas não com autofs ainda.

O que mais posso verificar ou onde estou errado?

* Com exceção das três primeiras etapas, desde que eu não tenho nem um serviço chamado nfs-common nem um arquivo /etc/default/nfs-common .

EDITAR

Eu estava conferindo este tutorial em um grupo do CentOS em FB que, depois que o lado do servidor é supostamente resolvido e estamos prontos para começar a configurar o lado do cliente, diz isto:

Test if you can see NFS server:
showmount -e

Então, estou supondo que usando showmount -e no cliente eu deveria ser capaz de obter algumas informações no servidor, ou pelo menos alguma confirmação de que posso montar sistemas de arquivos a partir desse servidor neste cliente. No entanto, tentei usar showmount -e 192.168.1.89 no lado do cliente, e a única mensagem que recebi foi esta:

 clnt_create: RPC: Port mapper failure - Unable to receive: errno113 (No route to host)

Suponho que este poderia ser o problema, mas não tenho certeza do que isso significa.

EDIT 2

Depois de ter desabilitado iptables no lado do servidor, agora posso ver os sistemas de arquivos exportados quando uso showmount -e 192.168.1.89 no lado do cliente. O que torna minha primeira edição acima discutível, eu acho. No entanto, ainda não consigo montar os sistemas de arquivos usando autofs .

EDIT 3

Ok, além de ter o iptables desabilitado, eu edito os dois /etc/exports no servidor e /etc/auto.nfs-share no cliente para ficar assim:

[root@centosserv ~]# cat /etc/exports
/NFSSHARE          192.168.1.100(fsid=0,rw,sync,no_subtree_check,root_squash,anonuid=1000,anongid=1000)
/NFSSHARE/mydir    192.168.1.100(rw,sync,no_subtree_check,root_squash,anonuid=1000,anongid=1000)
/NFSSHARE/mydir/ro 192.168.1.100(ro,sync,no_subtree_check)

[root@centoscli ~]# cat /etc/auto.nfs-share
writeable_share        -fstype=nfs4,rw 192.168.1.89:/mydir
non_writeable_share    -fstype=nfs4,ro 192.168.1.89:/mydir/ro

E com isso eu pareço ser capaz de montar os sistemas de arquivos, mas não escrever do cliente :

[root@centoscli ~]# touch /mnt/nfs/writeable_share/test_from_client.file
touch: cannot touch ‘/mnt/nfs/writeable_share/test_from_client.file’: Permission denied
    
por JNat 23.02.2015 / 19:33

1 resposta

0

Parece que o problema aqui eram as configurações de permissão na pasta sendo exportada no lado do servidor. Então, fazer o seguinte no servidor me permitiu escrever a partir do cliente:

[root@centosserv ~]# chmod 777 /NFSSHARE

Eu fiz isso em novas instalações do servidor e do cliente. Estava tendo os mesmos problemas novamente e, mesmo não tendo tentado desabilitar iptables no servidor e passando pelas alterações que eu editei na pergunta desta vez, decidi garantir que as permissões para /NFSSHARE estavam definidas corretamente. Parece ter feito o truque.

    
por 20.05.2016 / 21:27