Eu tenho um servidor NFS rodando no CentOS 7.2 e eu tenho um problema com um (host de caminho / cliente) declarado no meu /etc/exports
que deve ser exportado e isso não é ...
Meu arquivo /etc/exports
:
/mnt/data/ host1(rw,all_squash,anonuid=1001,anongid=1001)
/mnt/data/ host2(rw,all_squash,anonuid=1001,anongid=1001)
/mnt/data/ host3(rw,all_squash,anonuid=1001,anongid=1001)
/mnt/data/ host3(rw,all_squash,anonuid=1001,anongid=1001)
Eu reiniciei meu servidor nfs e faço exportfs -a
, então a saída de cat /var/lib/nfs/etab
está correta:
/mnt/data host1(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=1001,anongid=1001,sec=sys,rw,secure,root_squash,all_squash)
/mnt/data host2(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=1001,anongid=1001,sec=sys,rw,secure,root_squash,all_squash)
/mnt/data host3(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=1001,anongid=1001,sec=sys,rw,secure,root_squash,all_squash)
/mnt/data host4(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=1001,anongid=1001,sec=sys,rw,secure,root_squash,all_squash)
Mas quando executo o showmount -e
, ele não me mostra o host1:
/mnt/data host2 host3 host4
E, na verdade, não consegui montar /mnt/data
do host1:
[root@host1 ~]# mount -a
mount.nfs: access denied by server while mounting nfs-server:/mnt/data/
Considerando que a montagem está OK do host2,3 e 4.
PS: Para informações:
- host1 ... hostn pode ver e executar ping no servidor NFS
- O SElinux foi desativado para testes
- Não há firewall nem no servidor nem no cliente (a VM é clona uma da outra)
Editar :
Obrigado pelas suas respostas.
strace
não mostra muitas coisas:
stat("/run", {st_mode=S_IFDIR|0755, st_size=960, ...}) = 0
stat("/run/mount/utab", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
getcwd("/root", 4095) = 6
readlink("/root/nfs-server:", 0x7ffe3a9ee090, 4096) = -1 ENOENT (No such file or directory)
readlink("/mnt", 0x7ffe3a9edf70, 4096) = -1 EINVAL (Invalid argument)
readlink("/mnt/data", 0x7ffe3a9edf70, 4096) = -1 EINVAL (Invalid argument)
stat("/sbin/mount.nfs", {st_mode=S_IFREG|S_ISUID|0755, st_size=113400, ...}) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7fd1b08f6b50) = 51633
wait4(-1, mount.nfs: access denied by server while mounting nfs-server:/mnt/data/
[{WIFEXITED(s) && WEXITSTATUS(s) == 32}], 0, NULL) = 51633
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=51633, si_status=32, si_utime=0, si_stime=0} ---
close(1) = 0
close(2) = 0
exit_group(0) = ?
+++ exited with 0 +++
O que eu vejo sobre a execução de serviços no lado host1 é que nenhum serviço nfsv4.0-svc
está sendo executado:
[root@host1 ~]# ps -aux --forest | grep nfs
root 1199 0.0 0.0 0 0 ? S< Feb15 0:00 \_ [nfsiod]
considerando que ele está sendo executado em outros hosts que conseguem montar /mnt/data
[root@host2 ~]$ ps -ef | grep nfs
root 1296 2 0 févr.15 ? 00:00:00 [nfsiod]
root 1302 2 0 févr.15 ? 00:00:00 [nfsv4.0-svc]
Mas não sei se é uma causa ou uma consequência (por exemplo, nfsv4.0-svc
está em execução porque o mount é bem-sucedido ...): poderia ser a origem do pb?