- Tenho um laboratório de computadores usado por uma dúzia de alunos.
- Cada computador monta um compartilhamento NFS específico com alguns diretórios, visíveis para todos os alunos.
- Alguns alunos precisam de um local na rede para salvar os dados do seu Projeto, para que fiquem disponíveis em todos os computadores do laboratório.
- Por questões de segurança e privacidade, gostaria de ocultar a lista de diretórios dentro da área de trabalho compartilhada, de forma que se um determinado aluno executar o
ls
comando, ele possa ver apenas o seu próprio diretório, pensando que é o único lá. - Lembro-me de quando eu trabalhava para um ISP usando Sparcs rodando Unix, se um usuário tentasse listar o conteúdo do diretório /home, ele veria apenas o seu próprio (esses eram os tempos que costumávamos dê a eles contas shell para acessar seus e-mails usando o
Pine
comando)...
Alguém pode me dizer qual é a chmod
sintaxe de comando apropriada para isso?
Responder1
Digamos que as pastas pessoais estejam em /external/nfs/server/share
, para que o usuário alexp
tenha sua própria pasta /external/nfs/server/share/alexp
, de propriedade dele com bits de modo 0750 ( rwxr-x---
).
Faça com que a pasta pai /external/nfs/server/share
pertença a alguma conta e grupo administrativo, com bits de modo 0751 ( rwxr-x--x
). Desta forma, os alunos podematravessaro diretório para chegar à sua casa pessoal na rede, masnão consigo listarseu conteúdo. Ver "Executar vs ler bit. Como funcionam as permissões de diretório no Linux?" no Unix e Linux SE.