Tenho uma pasta montada do servidor remoto para o local:
mount -o nolock 92.xxx.xxx.xxx:/var/www/html/static/data /home/myaccount/public_html/forum/data_remote
O problema é que a conta local tem UID 500 e a remota é 48, então não consigo gravar nenhum conteúdo nos dados locais /home/myaccount/public_html/forum/data_remote
- devido ao erro de permissão negada.
Aqui está o meu /etc/exports
:
/var/www/html/static/data/ 5.xxx.xxx.xxx(rw,insecure,no_root_squash)
O que posso fazer para mapear corretamente as permissões para permitir que minha conta grave na pasta remota?
Responder1
Você terá que alterar o UID para corresponder ao que está no servidor remoto. Antes de fazer isso, certifique-se de que sua conta de usuário não esteja executando nenhum processo.
usermod -u NEWUID username
Lembre-se de que qualquer arquivo fora do seu diretório inicial deverá ter sua propriedade alterada manualmente. Você pode fazer isso com este comando no sistema onde alterou o UID:
find / -user OLDUID -exec chown -h username {} \;
Isso lhe dará o mesmo UID em cada sistema, o que permitirá gravar no diretório remoto e modificar os arquivos. Pode ser mais fácil fazer isso na máquina remota se você não a estiver usando regularmente e tiver menos arquivos, supondo que você tenha acesso para fazê-lo.
Você também pode fazer o mesmo criando um grupo com o mesmo GID em cada máquina e adicionando seu usuário ao grupo na máquina onde você está tentando se conectar aos compartilhamentos.
Em cada máquina:
groupadd -g GID groupname
Na máquina que hospeda os compartilhamentos NFS:
chown :groupname /nfs/share
Na máquina conectada aos compartilhamentos:
usermod -aG groupname username