"Ronaldo Reis Jr." <[EMAIL PROTECTED]> writes:

> Pessoal,
> por acaso existe algum manual/tutorial simples que explique melhor como 
> trabalhar com permissoes no linux?

Voc� tem forma��o em alguma �rea t�cnica? Se sim, utilize-se de
teorias de conjuntos para resolver esse problema. Trabalhar�s com
uni�es, intersec��es, etc.

> Como eu fa�o para criar um diretorio onde eu possa compartilhar arquivos com 
> outro usuario? Sempre precisarei do root para isto?

Voc� sempre precisar� do root para alterar o owner de algum
arquivo. Precisar�, tamb�m, de root para alterar o arquivo para algum
grupo ao qual voc� n�o perten�a.


Imagine, por exemplo, um diret�rio comum: /tmp.
Todos podem ler e escrever ali. 

Como restringir isso? Elimine as permiss�es desnecess�rias. Nos
comandos a seguir, # � o prompt do root e $ o do usu�rio:

# ou $     mkdir /dir_comum
# ou $     chmod o= /dir_comum (1)

Mas isso n�o te resolve o problema, ainda... 

#    groupadd comum
#    usermod -G comum usuario1
#    usermod -G comum usuario2

Agora tens os dois usu�rios como membros do grupo "comum". Fa�a isso
para todos os usu�rios que queiras que compartilhem informa��es desse
grupo. Sugest�es para nomes de grupos: financeiro, comercial,
administrativo, etc. 

# ou $    chgrp comum /dir_comum
# ou $    chmod g+s /dir_comum    (2)


A partir de ent�o, todos os arquivos criados no /dir_comum ser�o
compartilhados. O usu�rio que ser� o dono desses arquivos ir� mudar de
acordo com o �ltimo usu�rio que gravou informa��es neles, mas todos
continuar�o com acesso devido �s permiss�es de grupo.



(1) Prefiro esse tipo de nota��o pois assim n�o preciso decorar a
    representa��o octal e n�o preciso me preocupar com as permiss�es
    anteriores. No exemplo que dei, apenas as permiss�es de "outros" �
    que s�o alteradas. As de dono e grupo permanecem como estavam.

(2) Isso ativa o SGID bit.

> Mas como fazer para eles terem um dir em comum, ele nao podem criar dirs fora 
> do seu home, e dentro do home de cada uma o acesso � limitado entao????

Ent�o voc� ter� que solicitar ao administrador da m�quina que fa�a
isso por voc�. Pe�a que ele crie um grupo incluindo fulano e
ciclano. Os comandos necess�rios e permiss�es necess�rias est�o
destacados acima.

> Ser� que a solu�ao seria o root criar um dir publico no /home com permissoes 
> livres? Dai precisa do root.

Voc� vai precisar dele para criar os grupos. Ou "liberar geral", para
que _todos_ possam ler e gravar as informa��es. � como no NT... S� o
administrador pode criar grupos(*).


              (*) Isso n�o � inteiramente verdade. Via Linuxconf, por
              exemplo, voc� pode autorizar os usu�rios a realizarem
              essa tarefa. Podes, tamb�m, faz�-lo via comando sudo.

> Mas a pasta percisaria ser vista so pelos dois, entao eu precisaria de um 
> grupo comum somente aos dois, certo? Dai preciso do root novamente!?!

E qual o problema em precisar do root? Voc� precisou dele para
instalar a m�quina, certo??? :-P

> Vamos supor que a resposta seja o root criar o diretorio dos caras e o grupo 
> fuclano comum aos dois.

� isso mesmo.

> drwxrwx---   5 fulano  fuclano         933 Aug 27 10:21 fuclano
>
> mas neste caso, se o ciclano copiar algo para dentro do /home/fuclano, o 
> arquivo copiado ficara exatamente com a mesma permissao que estava dentro do 
> proprio home, ou seja, o fulano nao podera ver.

Correto. � isso o que dizem as permiss�es acima.

> dai eu coloque setgid no diretorio /home/fuclano ficando assim:
>
> drwxrws---   5 fulano  fuclano         933 Aug 27 10:39 fuclano
>
> desta forma, quando alguem copia algo para dentro do diretorio /home/fuclano, 
> o arquivo se altera para o grupo fuclano, pelo menos na maioria das vezes, 
> nem sempre funciona, alguns arquivos nao mudam o gid. Mas as permissoes nao 

Deveriam mudar. 

> sao alteradas, ou seja o diretorio /home/fuclano tem permissao de rwxrwx---, 
> mas ao copiar um arquivo com permissao rwx------ para o /home/fuclano, este 
> permanece com a permissao rwx------, portanto a mudanca de grupo ocasionada 
> pelo setgid nao adiantaria de nada.  

Por isso que voc� deve usar uma m�scara adequada. Veja a documenta��o
do comando umask para saber como corrigi-la. 

> no linuxconf ta falando que a permissao de criacao � 700, mas isto nao te 
> funcionando, onde eu corrijo isto, existe algum programinha que verifica as 
> permissoes e corrige???

umask.



E leia a respeito de conjuntos :-)



Sds,
-- 
Godoy. <[EMAIL PROTECTED]>

Solutions Developer       - Conectiva Inc. - http://en.conectiva.com
Desenvolvedor de Solu��es - Conectiva S.A. - http://www.conectiva.com.br

Assinantes em 27/08/2001: 2262
Mensagens recebidas desde 07/01/1999: 129706
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista:
            mailto:[EMAIL PROTECTED]

Responder a