No meu servidor NFS, tenho a seguinte exportação definida:
#NFS exports Database
/shared -alldirs -network=192.168.1 -mask=255.255.255.0
No meu cliente NFS:
192.168.1.7:/shared /shared nfs rw 0 0
Obviamente, como root no servidor, posso fazer o que quiser. No cliente, no entanto, meu usuário comum 'gabe' pode fazer alterações na montagem nfs (supondo que eu tenha permissões), mas o root não pode.
Como meu usuário comum:
gabe@client$ cd /shared
gabe@client$ ls -l
total 8
drwxrwxrwx 4 gabe wheel 512 Mar 20 19:20 tmp
gabe@client$ cd tmp
gabe@client$ touch test.txt
gabe@client$ rm test.txt
Como raiz:
# cd /shared/tmp
# touch test.txt
touch: test.txt: Permission denied
Novamente, tudo isso é do lado do cliente NFS , e suspeito que talvez tenha algo a ver com a opção -maproot. Esta é a primeira vez que estou configurando o NFS e notei essa peculiaridade. Vou fazer algumas leituras agora, para ver se consigo descobrir isso, mas se alguém tiver alguma ideia, eu agradeceria.
fonte
-maproot
opção sem ter acesso ao servidor NFS.Esse é um comportamento comum nas implementações tradicionais do NFS. Os mapeamentos de usuário do NFS são executados independentemente do contexto, portanto, todos os acessos pela raiz do cliente precisam ser mapeados para um usuário específico (geralmente
nobody
por padrão). Daí esse comportamento estranho, em que a raiz do cliente não pode acessar seus arquivos diretamente, mas podesu gabe
acessá-los.(As versões “recentes” do NFS, ou seja, NFSv4 e talvez NFSv3, permitem um comportamento mais saudável se suportadas pelos dois lados, mas não conheço os detalhes.)
fonte