Linux slogan
Visite também: BR-Linux.org · Dicas-L · NoticiasLinux · SoftwareLivre.org · UnderLinux · BestLinux
» Screenshot



» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha

» Wallpaper
Linux: Castle of Terror
Por JuNiOx


Artigo

Permissões e propriedades de arquivos
Linux user
vodooo
14/07/2008
Neste artigo falarei sobre como distinguir níveis e tipos de permissão em arquivos e diretórios, utilizar os comando chmod e chown para modificar propriedades e permissões, distinguir os modos octal e textual para os parâmetros dos comandos de mudança de permissões, entender o que é máscara de um arquivo e como modificá-la, entender e utilizar permissões especiais, como stick bit e suid bit.
Por: Eduardo Vieira Mendes
[ Hits: 16314 ]
Conceito: 9.5   8 voto(s)8 voto(s)8 voto(s)8 voto(s)8 voto(s) + quero dar nota ao artigo

Modificando proprietários e grupos

Nesta seção, irei apresentar os principais comandos utilizados para modificar e visualiza as propriedades e permissões de arquivos e diretórios.

chmod

Permite que se alterem as permissões e propriedades de um ou mais arquivos (change mode). É importante ressaltar que o usuário deve ter permissões para fazer as alterações (por exemplo: deve ser o usuário root, deve ser dono do arquivo, ou deve estar no grupo do arquivo, com permissão de escrita). Pode utilizar tanto a notação textual como a octal.

Principais opções:

chmod [ opções ] arquivo | diretório
-R Permite que se altere recursivamente as permissões de arquivos e diretórios.
--reference=arquivo Permite que um determinado arquivo seja modificado tomando como referência o arquivo especificado.


As tabelas a seguir facilitam a visualização das notações utilizadas pelo chmod.

Nível de Permissão
u Usuário ou dono do arquivo.
g Grupo do arquivo.
o Outros usuários que não são donos e não estão cadastrados no grupo.
a Afeta todos os anteriores (u, g, o).
Tipo de Permissão - Notação Textual
r Concede ou remove permissão de leitura.
w Concede ou remove permissão de escrita.
x Concede ou remove permissão de execução.
a Concede ou remove todas as permissões anteriores (all).
Tipo de Permissão - Notação Octal
4 Indica permissão de leitura.
2 Indica permissão de escrita.
1 Indica permissão de execução.
7 Indica todas as permissões.
0 indica sem permissão.
Operadores
+ Concede permissão(ões) especificada(s).
- Remove permissão(ões).
= Atribui somente esta(s) permissão(ões) ao arquivo, removendo a(s) que não sem encontra(m) explícita(s).


Exemplos:

1) chmod u+rw,g+x documento.txt - concede permissões de leitura e gravação ao dono, e execução ao grupo para o arquivo documento.txt. note que somente quem tem permissão pode executar este comando (root ou dono do arquivo).

2) chmod 610 documento.txt - define permissão de leitura e gravação ao dono (4+2 = rw), execução para o grupo (1=x), e nenhuma permissão para qualquer outro usuário (zero). Importante notar que difere do exemplo anterior, pois na notação textual as permissões podem ser "adicionadas" às atuais, enquanto que na notação octal, o comando define a permissão do arquivo.

3) chmod +x binário.sh - concede permissão de execução (+x) de binário.sh para todos os usuários do sistema (caso não seja especificado o usuário, a permissão é concedida/retirada de todos - equivalente ao parâmetro a+x.

4) chmod -reference=documento.txt documento2.txt - aplica as mesmas permissões de documento.txt para documento2.txt.

5) chmod -R ug=rw,o=r testes/ - concede permissão de leitura e gravação ao dono e ao grupo, e permissão de leitura a outros, para o diretório testes e todos os arquivos ou sub-diretórios contidos dentro dele.

6) chown - permite a alteração do dono e do grupo relacionado ao arquivo, ou arquivos selecionados. Um usuário comum pode alterar o grupo de um arquivo caso seja membro tanto do grupo de origem quanto do grupo de destino. Porém, por motivos de segurança, apenas o super-usuário (root) pode alterar o dono de um arquivo.

Principais opções:

chown [novo_proprietário][:novo_grupo] arquivo/diretório
-R Permite que se altere recursivamente o proprietário e o grupo do(s) arquivo(s).
--reference=arquivo O arquivo usará o grupo configurado para o arquivo especificado.


Exemplos:



Altera o grupo de arquivo.txt para eduardo. Note que se o usuário não tiver permissões suficientes, será mostrada uma mensagem de erro.



Altera o dono do arquivo arquivo2.txt para eduardo e o grupo para eduardo. Lembre-se que apenas o superusuário (root) pode realizar esta alteração.



Modifica o grupo do diretório dados/ e de todos o seu conteúdo para eduardo.

chgrp

Altera apenas o grupo para os arquivos ou diretórios indicados. Um usuário comum pode alterar o grupo de um arquivo caso ele pertença tanto ao grupo de origem como ao grupo de destino. O super-usuário (root) pode alterar o grupo do arquivo para qualquer grupo válido no sistema.

É equivalente ao comando "chown" somente com o parâmetro :grupo (ou seja, sem modificar o dono do arquivo, somente o grupo).

Principais opções:

chgrp [ opções ] arquivo(s)
-R Permite que se altere recursivamente a propriedade de grupo de diretórios e seu conteúdo.
--reference=arquivo Permite que o comando use o grupo configurado para "arquivo" para configurar outros grupos.
-c Descreve detalhadamente a ação para cada arquivo cuja propriedade de grupo está sendo alterada.
-f Força a mudança de grupo, sem relatório de erros.


Exemplos:

1) chgrp coisas texto1 texto 2 imagens/ - modifica o grupo associado aos arquivos texto1 texto2 e ao diretório imagens, associando-os ao grupo coisas. Note que o usuário deverá ter as permissões suficientes para esta modificação, caso contrário será mostrada uma mensagem de erro.

2) chgrp -R empregados comercial/ - modifica o grupo associado ao diretório comercial e todos os seus arquivos e sub-diretórios, associando-os ao grupo empregados.

<< Página anterior Próxima página >>


Páginas do artigo
   1. Introdução
   2. Verificando permissões
   3. Modos Octal e Textual
   4. Modificando proprietários e grupos
   5. Permissões padrão (umask)
   6. Permissões em diretórios
   7. Permissões especiais
   8. Conclusão

Outros artigos deste autor

Leitura recomendada

Comentários
[1] Comentário enviado por grandmaster em 14/07/2008 - 12:37h:

Parabens pelo artigo, está muito bem explicado.

Vale a leitura para quem tem dificuldade em lidar com o esquema de permissões.

---
Renato de Castro Henriques
CobiT Foundation 4.1 Certified ID: 90391725
http://www.renato.henriques.nom.br

[2] Comentário enviado por izabeljp em 14/07/2008 - 12:47h:

Isso é que eu achamo de "Tutorial Completo"...
Já ta nos meus favoritos ;D
Parabéns!

[3] Comentário enviado por paulo.neto em 14/07/2008 - 13:19h:

Este artigo é quase uma cópia fiel do capítulo de Administração de Sistemas da apostila do curso oficial da Mandriva.

[4] Comentário enviado por foguinho.peruca em 15/07/2008 - 11:00h:

Olá!

Gostei do tutorial. Bem completo e didático. Parabéns. Nota 10!

Só uma coisinha:
deve ter passado pela equipe da moderação. Achei um errinho de português no texto:

"Por padrão, quando um usuário é criado, é criado um grupo com o mesmo dome de usuário. É possível visualizar estar informações com o comando "id"."

Onde "dome", acredito eu, seja "nome".

[]'s
Jeff

[5] Comentário enviado por pink em 15/07/2008 - 13:59h:

Caro Eduardo/vodooo, parabéns pelo ótimo artigo! 10.
Muito didático, eu já conhecia o conceito das permissões, mas a forma como você descreveu está impecável, você teve uma simplicidade ao explicar um tema tão pouco discutido, para um leigo este esclarecimento é muito importante....
Parabéns novamente, obrigada pela contribuição.
Fique com Deus,
Michele

[6] Comentário enviado por drc em 24/07/2008 - 15:10h:

sou iniciante no mundo linux. Gostei muito pois está muito bem explicado.
Parabéns

[7] Comentário enviado por vodooo em 28/01/2009 - 08:33h:

Obrigado a todos pelos elogios.

Abraços a todos.


Contribuir com comentário
  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Copyleft 2002-2009 Viva o Linux.com.br

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.