No servidor NFS, altere a exportação e adicione uma opção -maproot=some_user
. Isso fará com que qualquer usuário "root" que acessar o compartilhamento receba os direitos de acesso que "some_user" normalmente teria.
Um servidor de tomcat que é executado como raiz (por exemplo, aplicativo da Web usando a porta 80) precisa de acesso a um compartilhamento NFS para armazenar arquivos enviados, aos quais a conta raiz não tem acesso. Como era de se esperar, quando o aplicativo da Web tenta armazenar um arquivo, uma exceção de permissão é lançada.
Posso montar o compartilhamento como um usuário não raiz, para que o servidor da Web consiga acessar o compartilhamento sem problemas de permissão?
No servidor NFS, altere a exportação e adicione uma opção -maproot=some_user
. Isso fará com que qualquer usuário "root" que acessar o compartilhamento receba os direitos de acesso que "some_user" normalmente teria.
Uma solução alternativa poderia ser executar o tomcat em uma porta > 1000 para que ele pudesse ser executado como o usuário com acesso ao compartilhamento NFS.
Uma instância do Apache ou nginx pode, então, ser exibida na porta 80 e fazer proxy das solicitações para o aplicativo da Web.
Tags permissions mount nfs fstab