Quem usa o Windows 2000/XP e tem vários usuários no mesmo computador (irmãos, pais, namoradas, etc) deve estar acostumado a usar aquela pasta do sistema chamada "Documentos Compartilhados" para arquivos que devam estar acessíveis a todos, como músicas ou qualquer outra coisa.
Na verdade essa pasta funciona como se fosse automaticamente compartilhada na rede, mas aqui vou abordar apenas o compartilhamento local de arquivos entre vários usuários.
Acontece que no
Linux não há algo assim já configurado. Como lá em casa eu e os meus irmãos usamos essa pasta para armazenar as músicas, fotos e outros documentos que devam estar acessíveis a todos, resolvi configurar alguma coisa semelhante no
Linux.
A maioria das configurações realizadas vai precisar de poderes de root ou do sudo configurado corretamente, então certifique-se de que você tem essas permissões.
Criando a pasta
Primeiro precisamos da pasta que será compartilhada. Eu criei um diretório no /home, já que serão arquivos de uso dos usuários:
# cd /home
# mkdir DocumentosCompartilhados
Configurando o grupo
Depois vamos garantir o acesso de todos os usuários à pasta. Vamos controlar o acesso através de um grupo de usuários, colocando esta pasta e os usuários que devem ter acesso a ela no grupo. No meu caso usei o grupo "users", mas você pode verificar o seu /etc/groups para ver um grupo legal ou até mesmo criar um grupo novo.
Para mudar o grupo da pasta use:
# chgrp users /home/DocumentosCompartilhados
Para incluir os usuários no grupo use:
# gpasswd -a joao users
# gpasswd -a mariana users
Além disso é necessário que os arquivos criados dentro da pasta permaneçam no grupo "users". Então vamos setar o setgid da pasta para que todos os arquivos criados dentro do diretório sejam do mesmo grupo dele:
# chmod g+s /home/DocumentosCompartilhados
Facilitando o acesso
Para facilitar o acesso e a visualização da pasta compartilhada, vamos criar na pasta pessoal de cada usuário um link simbólico para ela:
# cd /home/joao
# ln -s /home/DocumentosCompartilhados/ /home/joao/DocumentosCompartilhados
# chown joao.users DocumentosCompartilhados
# cd /home/mariana
# ln -s /home/DocumentosCompartilhados/ /home/mariana/DocumentosCompartilhados
# chown mariana.users DocumentosCompartilhados
Ajustando as permissões
Depois de todas essas configurações ainda falta ajustar algumas permissões de maneira que os arquivos criados por um usuário possam ser alterados por outros usuários por padrão.
Opção 1: Setar a umask dos usuários (que normalmente é 0022) para 0002. Essa alteração vai fazer que cada documento criado por um usuário já venha com permissão de leitura e de escrita para os usuários do mesmo grupo a que o arquivo pertence, ao invés da permissão apenas leitura gerada pela umask 0022. Pode-ser fazer isso alterando o ~/.bashrc dos usuários acrescentando ou alterando para que contenha a linha "umask 0002".
Opção 2: Outra opção poderia incluir um script que executasse "chmod -R g+rw /home/DocumentosCompartilhados/*" a cada boot ou até mesmo em uma entrada do cron.