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.

[ Hits: 177.151 ]

Por: Fabio Maran em 02/09/2008 | Blog: http://movimentolivre.zip.net


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.

Página anterior     Próxima página

Páginas do artigo
   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
Outros artigos deste autor

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

DansGuardian: Filtrando o acesso a Web

Samba: Integração com ClamAV e outras coisas úteis

Shell script: *, [], {}, ????, como utilizá-los?

Umask para leigos

Leitura recomendada

FreeRADIUS - Noções básicas - Parte I

Mamãe, quero Slack! (parte 1)

Configuração do Ubuntu 16.04 para acesso com cartão ao Banrisul

Básico sobre tratamento de exceções em Python 3.4

Linux: kernel e distribuições

  
Comentários
[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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts