Pular para o conteúdo

Leia, grave e execute!

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.
Fabio Maran maran
Hits: 190.891 Categoria: Linux Subcategoria: Introdução
  • Indicar
  • Impressora
  • Denunciar

Parte 5: Atribuição direta

Agora veremos o método por atribuição direta. Então no que consistirá este método? Em simplesmente já dizer diretamente qual será a permissão. Não entendeu?

No método anterior analisamos as permissões que os arquivos já possuíam, e vimos se era preciso tirar alguma ou inserir outra, ou seja, nos analisamos para não ter problemas, ou a permissão não saía do jeito que queríamos.

Vamos a prática que ficará mais claro o que quero dizer. Lembra-se dos arquivos que tínhamos criado? Então, continuaremos a trabalhar com eles. Navegue até a pasta onde havia criado os mesmos:

# cd /home/maran/permissoes

Vamos ver como está:

# ls -l perm*.txt
---------- 1 root root 0 2008-08-16 11:16 permissao1.txt
---------- 1 root root 0 2008-08-16 11:16 permissao2.txt
-rw-r--r-- 1 root root 0 2008-08-16 11:16 permissao3.txt
-rw-r--r-- 1 root root 0 2008-08-16 11:16 permissao4.txt
-rw-r--r-- 1 root root 0 2008-08-16 11:16 permissao5.txt
-rw-r--r-- 1 root root 0 2008-08-16 11:16 permissao6.txt

Ok, do jeito que tínhamos deixado. A atribuição direta será da seguinte maneira.

Digamos que eu queira deixar o arquivo permissao3.txt com leitura, escrita e execução para o dono, grupo e outros. Fica da seguinte maneira:

# chmod u=rwx,g=rwx,o=rwx

Entenderam do porque se diz atribuição direta? Pois já definimos:

u=valor,g=valor,o=valor
(valores possíveis: (r) leitura ; (w) escrita ; (x) execução; (---) vazia

Ou seja, direto, não importando as permissões que já estavam.

Se eu quisesse apenas leitura:

u=r

Simples de tudo não é, este é meu método favorito. Faremos então alguns testes:

Quero que o arquivo permissao4.txt tenha permissão de execução para o dono, execução e leitura para o grupo e nada para outros.

# chmod u=x,g=rx,o=---

Veja se o mesmo consegue tal permissão:

# ls -l permissao4.txt
--w-r-x--- 1 root root 0 2008-08-16 11:16 permissao4.txt

Perfeito!

Quero deixar todos os arquivos iniciados com permissão para, com poder de leitura, escrita e execução para dono, grupo e outros.

# chmod u=rwx,g=rwx,o=rwx perm*.txt

Resultado:

# ls -l perm*
-rwxrwxrwx 1 root root 0 2008-08-16 11:16 permissao1.txt
-rwxrwxrwx 1 root root 0 2008-08-16 11:16 permissao2.txt
-rwxrwxrwx 1 root root 0 2008-08-16 11:16 permissao3.txt
-rwxrwxrwx 1 root root 0 2008-08-16 11:16 permissao4.txt
-rwxrwxrwx 1 root root 0 2008-08-16 11:16 permissao5.txt
-rwxrwxrwx 1 root root 0 2008-08-16 11:16 permissao6.txt

Bacana, porém agora quero zerar todas as permissões dos arquivos dentro da pasta /home/maran/permissoes:

# chmod -R u=---,g=---,o=--- /home/maran/permissoes/*

O que foi feito?

Eu disse para o chmod usar a recursividade, ou seja, tudo abaixo daquele diretório, isto foi obtido com a chave -R e com o wildcard(coringa) *.

Vamos ver se funcionou:

# ls -l /home/maran/permissoes/*
---------- 1 root root 0 2008-08-16 11:16 permissao1.txt
---------- 1 root root 0 2008-08-16 11:16 permissao2.txt
---------- 1 root root 0 2008-08-16 11:16 permissao3.txt
---------- 1 root root 0 2008-08-16 11:16 permissao4.txt
---------- 1 root root 0 2008-08-16 11:16 permissao5.txt
---------- 1 root root 0 2008-08-16 11:16 permissao6.txt

É isso aí, aprendemos mais um método. ;)
Vamos ao próximo então.

   1. Introdução
   2. Visão geral
   3. Alterando o dono/grupo de um arquivo
   4. Atribuição de permissão por soma ou subtração
   5. Atribuição direta
   6. Atribuição octal
   7. Umask
   8. Atribuições especiais: Stick Bit, SGUID e SUID
   9. Testando o conhecimento adquirido: um problema e uma solução
   10. Considerações finais

Umask para leigos

DansGuardian: Filtrando o acesso a Web

Debian e o Backports

Samba: Servidor de impressão e introdução a PDC (Primary Domain Controller)

Desktop Debian/Ubuntu

Resumo do documentário Revolution OS

Instalação de Programas no Ubuntu (atualização)

Como escolher sua distribuição GNU/Linux

Linux Mint 7 Gloria

Finalmente consegui tirar o Windows do meu computador!

#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.

Abraço.
#2 Comentário enviado por removido em 02/09/2008 - 11:59h
Parabéns maran,
um dos melhores que já ví sobre permissões ...
#3 Comentário enviado por maran em 02/09/2008 - 13:10h
@robsonbraga, fala meu velho, obrigado pelo comentário, livro rsrsr quem me dera ;)

@noel fala velinhu tudo na paz????
Obrigado !!!

Abraços
#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!!!!

Abraço...
#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!

Abraço
#7 Comentário enviado por tiagotavares em 02/09/2008 - 14:36h
Minha nossa, que muleque atentado, tá virando o rei dos artigos, sempre que abro o viva o linux tem um artigo novo seu!

Abraço!

Tiago
#8 Comentário enviado por cesar em 02/09/2008 - 16:21h
Muito bom maran

Parabéns.

[]'s
#9 Comentário enviado por dfsantos em 02/09/2008 - 18:29h
Show de bola maram

bem didatico... muito bom mesmo.

#10 Comentário enviado por diegofsouza em 03/09/2008 - 08:58h
Ótimo artigo... Muito completo. Gostei!

Abraço!

Viva o Linux
#11 Comentário enviado por percival em 03/09/2008 - 11:09h
Artigo de nível, parabéns.
#12 Comentário enviado por maran em 04/09/2008 - 06:55h
@dfsantos , muito obrigado pelo comentário.

@Cesar, fala mey velho, obrigado pelo coment

@Percival, :)

Abraços
#13 Comentário enviado por balani em 04/09/2008 - 09:10h
Excelente artigo, parabens!
#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

grande abraço..parabéns
#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 ;)

Abraços, te mais...
#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

Beijinhus
#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.
#21 Comentário enviado por josemirsilva em 07/01/2012 - 15:12h
boa tarde,
chegamos em 2012, e seu artigo parace que foi feito onde, valeu, que voce continue esclarecedo o grupo que pesquisa aqui no vivaolinux.

valeu

Deus continue te abençoado.

#22 Comentário enviado por Badabum em 17/05/2012 - 11:52h
Muito obrigado pelo seu artigo...Muito bem feito...Salvou umas 3 vidas no minimo.
#23 Comentário enviado por igor_rocha em 20/07/2012 - 02:55h
Esse gurizão ai ta de parabéns!! show de bola!!

[]S
#24 Comentário enviado por dodo1986 em 11/02/2013 - 19:16h
Muito bom este artigo, acabei de fazer o curso de Linux em uma institição, porem havia me esquecido dessas permissoes. me ajudou muito.
#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?

Contribuir com comentário

Entre na sua conta para comentar.