Executando o CentOS 8
server side: /etc/exports:
/home/share *(ro)
/home e /home/share são propriedade de root.root e possuem 755 permissões em diretórios e 644 permissões em arquivos.
client side:
mount -t nfs4 server:/ /sharefolder
Como faço para montar /home/share diretamente em /sharefolder em vez de montar a raiz do fs? Se eu tentar "mount -t nfs4 server:/home/share /sharefolder", recebo um erro "Operação não permitida"
Responder1
mount -t nfs4 server:/home/share /sharefolder
parece um comando correto do lado do cliente e sua configuração funciona para mim, pois acabei de testá-la.
Claro, você deve inserir o comando como root ou usá sudo
-lo. A mensagem de erro “Operação não permitida” sugere que talvez você tenha executado acidentalmente o comando como um usuário não root ou digitado incorretamente o nome do compartilhamento.
Observe que mesmo se você exportar e montar apenas server:/home/share
, o servidor NFSv4 precisará gerar automaticamenteexportações virtuaisPara /
e /home
. No entanto, estes não serão os diretórios reais /
nem /home
, mas virtuais somente leitura do servidor NFS que contêm apenas os subdiretórios mínimos necessários para alcançar os diretórios realmente exportados. Depois que o compartilhamento for montado, você poderá ver isto /proc/fs/nfsd/exports
no servidor NFS:
cat /proc/fs/nfsd/exports
# Version 1.1
# Path Client(Flags) # IPs
/home *(ro,insecure,no_root_squash,sync,no_wdelay,no_subtree_check,v4root,uuid=e4c0fcd4:00b94db3:b63bd9a8:0e705e29,sec=390003:390004:390005:1)
/home/share *(ro,root_squash,sync,wdelay,no_subtree_check,uuid=e4c0fcd4:00b94db3:b63bd9a8:0e705e29,sec=1)
/ *(ro,insecure,no_root_squash,sync,no_wdelay,no_subtree_check,v4root,fsid=0,uuid=e4c0fcd4:00b94db3:b63bd9a8:0e705e29,sec=390003:390004:390005:1)
Responder2
Depois de alguns testes consegui reproduzir o seu problema, e acabou sendo um problema de firewall. Certifique-se de que o firewall esteja desativado e verifique se o seu nfs
compartilhamento funciona depois.
Supondo que você use firewalld
:
sudo systemctl stop firewalld
Depois de determinar que nfs
funciona conforme o esperado, você desejará alterar a configuração do firewall.
nfs
depende de outros processos daemon, portanto, para nfs
funcionar corretamente, você precisa deixar passar não apenas nfs
, mas também mountd
erpc-bind
sudo firewall-cmd --permanent --add-service=rpc-bind
sudo firewall-cmd --permanent --add-service=mountd
sudo firewall-cmd --permanent --add-service=nfs
sudo firewall-cmd --reload
Você também pode especificar uma zona se desejar que esses serviços sejam permitidos apenas para uma zona específica, adicionando, por exemplo--zone=nfszone
Não testei completamente esta solução e pode ser necessário abrir uma porta adicional para que todas as funcionalidades funcionem (ou seja, bloqueio de arquivos). Consultehttps://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/storage_administration_guide/s2-nfs-nfs-firewall-config