A situação: eu simplesmente quero poder acessar um Synology NAS a partir de um servidor Ubuntu com um usuário não root.
No NAS eu tenho isso no arquivo de exportação:
/Directory <client-ip>/255.255.255.0(rw,async,no_wdelay,no_root_squash,insecure_locks,sec=sys,anonuid=1003,anongid=1004)
No Ubuntu-Server no fstab eu consegui isso:
<server-ip>:/Directory /Mountpoint nfs noauto,user,rw 0 0
Agora quero permitir que o UserA, que é usado para alguns processos automáticos, monte o compartilhamento e grave nele.
mount /Mountpoint
Montar como UserA funciona bem, mas não tenho permissão nem para ler o que está no diretório. Como usuário root eu faço. Listar a pasta do ponto de montagem mostra estas permissões:
drwxrwx--- 4 UserA root 4096 Sep 17 13:58 Mountpoint
Tentei definir os ids anon nas exportações para os ids do UserA, mas não adiantou. Tornar UserA o proprietário da pasta também não ajudou. Há alguma coisa simples que estou perdendo?
Além disso: precisa ser um compartilhamento NFS, pois transferirá grandes quantidades de dados.
Editar: eu preferiria evitar conceder permissões de leitura e gravação a "outros" por motivos de segurança.
Responder1
Let usera
Ser o grupo primário de UserA ( groups usera
). Você pode descobrir o GID usando: id -g usera
no sistema cliente, diga que é 1256
. Agora adicione seu usuário ao usera
grupo:
sudo adduser ayven usera
Agora, no servidor, faça:
chown :1256 /Directory # Replace 1256 with the correct GID
chmod g+rwxs /Directory
Remonte-o no cliente:
sudo umount /Directory
sudo mount /Directory
(Talvez seja necessário fazer login novamente para que seus novos grupos tenham efeito.)
Agora você e você usera
têm acesso completo ao compartilhamento NFS. Eu usei o setgid
bit, então talvez seja necessário habilitá-lo, não me lembro. Adicione ao grupo todos os usuários aos quais deseja ter acesso a este diretório usera
.