Neste artigo abordarei as permissões no Linux, ou seja, como atribuir/retirar uma permissão, mudar o dono/grupo de um arquivo. Enfim, entender como este mecanismo funciona.
Esta é uma tarefa bem simples, mas que sempre está sendo usada.
Muitas vezes precisamos implementar algum recurso novo ou mesmo uma nova funcionalidade em nosso sistema, porém como o Linux, é um sistema onde trabalhamos com diversos usuários, precisamos ter um controle, aí entram os donos e grupos de arquivos. :)
Um exemplo, administro um sistema e implemento neste sistema um servidor de proxy, só que eu não cuidarei deste serviço, vou passar a outro cara, e para não lhe dar a senha de root, eu posso criar um usuário chamado squid, com o grupo squid, e dar todas as permissões para que ele possa executar seu serviço sem precisar da senha de root.
Os comandos para alterar/trocar o dono/grupo de um arquivo são: chown e o chgrp.
Basicamente ficaria assim sua execução:
# chown usuário:grupo arquivo
Onde "usuário" seria o usuário desejado, "grupo" o grupo desejado, e "arquivo" o arquivo desejado.
# chgrp grupo arquivo
A diferença é que neste comando mudamos apenas o grupo, acho que dispensa comentários.
Vamos então para a prática.
Crie um diretório onde achar melhor denominado grupos, e dentro do mesmo crie 3 arquivos, denominados teste1, teste2 e teste3
# cd /tmp
# mkdir grupos ; touch /grupos/teste{1,2,3}
Ok, vamos criar três grupos apenas para testes. Vocês podem criar os grupos que desejarem, eu criarei os grupos:
[1] Comentário enviado por robsonbraga em 02/09/2008 - 11:34h
Cara, parabens, já conheço bem do assunto, mas sempre dou umas espiadas nos artigos e o seu está muito bom, bem didático e bem escrito, até parece que ta escrevendo o livro PERMISSÕES FOR DUMMIES.
[4] Comentário enviado por fulllinux em 02/09/2008 - 13:37h
Ponte que partiu kara!!!! Já está aqui... ehehe... posso dizer que esse já tive a oportunidades de dar uma espiada!!! heheh...
Grande maran... kara esse ficou show!!!!
[5] Comentário enviado por gjr_rj em 02/09/2008 - 13:55h
Cara, parabéns !!!!
Acho que como todos que comentaram, entrei apenas parar ver, pois acreditava que iria falar de um assunto, já bem, conhecido por mim e acabei aprendendo muita coisa.
Não li muitos artigos sobre permissões para poder comparar, mas pela qualidade do seu, apostaria alto em que não houve artigo nem parecido.
[6] Comentário enviado por maran em 02/09/2008 - 14:07h
@Rafael, puxa foi rapido meu velho mostrei ele para vocÊ, e logo depois já veio pra cá shuhusahusahusahusahu.
Vaaleu meu velho :)
@Geraldo, fala meu velho, como que estas?
Muito obrigado pelo comentário, bom quanto a outros artigos, cada um tem seu diferencial, porem todos vem para somar, assim como o meu!
[14] Comentário enviado por kalib em 04/09/2008 - 10:56h
Isso tudo foi pra me fazer ficar cansado?? hauhauah
Show de bola cara...bem completo e extenso. ;] Boa didática...
Tive que dividir em dois dias de leitura pq esses dias tem sido corridos aqui no trabalho..por isso demorei a comentar.. huahah
[15] Comentário enviado por maran em 04/09/2008 - 11:24h
@kalib, fala meu velho, uhsauhashuashusa
cansado rsrs, eu ia manda lá pra aquele nosso esquema, mas ia ficar muito grande oO"
ehhehe que isso meu velho, obrigado pelo comentário ;)
[16] Comentário enviado por pink em 04/09/2008 - 13:38h
Maranzinho, parabéns... li inteiro seu artigo, nossa muito bom, fácil entendimento, bom português..... apesar de nada novo ser me apresentado eu tinha que comentar hehehe, artigos como esses valorizam o VOL, pode ter certeza que esse artigo é muito mais que somar, é multiplicar valores...
Permissões é algo essencial a todo user/adm, esse tutorial será útil não somente para iniciantes, para avançados também sobre um tema muito importante e pouco discutido.
Parabéns novamente, obrigada pela contribuição, você tem toda a minha admiração....
# chmod 700 /root/pink/s2/maran
Fique com Deus,
Michele [pink]
[17] Comentário enviado por maran em 04/09/2008 - 13:51h
@caipirinha, Olá minha querida :)
Ahh que bom que o cê gosto do artigo do compade aqui, rsrsrs
Brincadeira a parte, realmente este é um assunto muito importante, e realmente pouco comentado, mais creio eu pelo fato de ser de simples entendimento de todos , mas é sempre bom prevenir né?
Bom:
# cd /s2
# mkdir caipirinha
# echo 'você pode' > fazeroseguinte.txt
# chmod 700 /s2/*
# echo 'rabiscar,pintar e bordar' > aquidentro.txt
[18] Comentário enviado por homme em 08/10/2008 - 20:26h
O artigo contribuiu muito para meu aprendizado, tem muuita informação.
Porém, a tabela octal me deixou confuso a princípio.
Quando atribuo a permissão 321, ela mostra '--wx-w---x' e não '-r-x-w-r--' como mostra o exemplo.
Fiz alguns testes de 000 até 777 e eu cheguei a uma tabela
1 - x
2 - w
4 - r
Desculpe se estou falando asneiras.
Muito obrigado.
Rafael
[19] Comentário enviado por fainfo em 13/12/2009 - 18:20h
Nossa cara me matei lendo artigos aqui pra entender umask, e o seu foi muito claro didático, porra muito bem, agora com esse método eu não preciso fazer mais cálculo com binários?
se quiser mandar resposta por e-mail " fainfonet@gmail.com
[20] Comentário enviado por fbcborges em 24/06/2010 - 10:07h
Muito bom o artigo, sou iniciante obtive recentemente no curso essas permissões e com mais esse material, deu para clarear bastante o raciocíonio perante a esta função do Linux.
Parabêns pelo artigo, agradeço em nome de todos os iniciantes em Linux.
[25] Comentário enviado por edertux em 04/03/2015 - 17:38h
Parabéns @maran, artigo de alto nível!
Galera do VOL, ainda estou com uma dúvida:
Criei dois arquivos teste:
/home/edertux/primeiro, é vazio e com permissão -rw-r--r-- para receber qualquer coisa.
/home/edertux/segundo,é um script e com permissão -rwsr-xr-x para alimentar o /home/edertux/primeiro.
Faço login com um segundo usuário, executo /home/edertux/segundo normalmente (afinal, ele tem permissão para isso), porém quando chega na parte de alimentar (echo "Qualquer coisa" >> /home/edertux/primeiro) ele dá permissão negada.
Partindo do princípio que o /home/edertux/segundo está com SUID habilitado, outros usuários não deveriam conseguir alimentar o /home/edertux/primeiro ao executar /home/edertux/segundo?