Linux :: chmod – Definindo permissões no modo octal

Tux

Nível Básico / Iniciante

 

Ao ler este artigo você saberá:

  • utilizar o método octal para definições de permissões com o comando chmod.
  • calcular o valor a ser definido na permissão de arquivo ou diretório.

Sem sombra de dúvidas, uma das coisas que assusta a muitos novos usuários de linux (Principalmente para quem está acostumado com Windows), além da estrutura de arquivos e diretórios são as permissões. Sua forma de administrar e operar.

Obs: Em um artigo anterior , já tratei um pouco sobre arquivos e permissões no Linux, se você desejar ver este arquivo, clique aqui.

Depois de conversar com alguns colegas e pessoas que estavam começando no mundo Linux, descobri que seria necessário refinar mais o artigo de permissões de arquivos e diretórios no Linux, principalmente no modo octal, então acredido que por meio desta explanação, você terá suas dúvidas sanadas.

Cada arquivo no Linux possui permissões especificas e propriedades que indicam a que usuário e grupo ele pertence. É exatamente através destas características que se derterminaIn quem pode ou não ter acesso a determinada informação. De fato, o Linux trabalha desta forma de formas mais abrangentes que simples gerenciamento de arquivos ou diretórios, mas este é tema para outro momento.

Para começarmos a tratar do assunto de permissões de arquivos, podemos iniciar tendo em mente o seguinte:

No Linux as permissões são atribuídas em três níveis específicos, que envolve todos usuários:

  • Usuário proprietário do arquivo ou diretório: Na maioria das vezes foi quem o criou, mas pode receber essa atribuição pelo root.
  • Grupo do proprietário do arquivo ou diretório: É o grupo que categoriza os usuários do mesmo grupo de quem criou o arquivo ou diretório, mas pode ser alterado pelo root.
  • Outros usuários: São qualquer outro que não o próprio usuário proprietário ou membro do grupo do proprietário.

Para cada um destes níveis, existem três tipos de permissões:

  • r – para leitura.
  • w – para escrita ou gravação.
  • x – para exceção, no caso de se tratar de um script ou binário executável.

Apenas para tornar mais fácil a leitura da apresentação das permissões de um arquivo, devemos nos lembrar que o Linux também classifica arquivos e diretórios por tipos:

Descrição dos tipos encontrados na listagem gerada pelo comando LS
Descrição dos tipos encontrados na listagem gerada pelo comando LS

Você nota isso claramente quando utiliza o comando ls para listar os arquivos e diretórios. Note que independente se estamos nos referindo a um arquivo ou diretório, temos apresentado pelo sistema o tipo que classifica e os níveis de permissões.

Listando diretório com o comando LS -lt
Listando diretório com o comando LS -lt

Na imagem, você nota a utilização do comando ls -lt.

O método octal é uma representação das permissões no nível binário e esta forma de administração funciona através da soma de valores. Os valores são:

  • r – 4
  • w – 2
  • x – 1

Sim, são representados em ordem decrescente. A soma de todos representa o nível mais alto de permissão: 7. Isso diz ser possível ler, gravar e executar, ou seja, todas possibilidades. Agora tendo isso em mente note essa tabela de possíveis combinações:

Combinações Possíveis de permissões no Linux
Combinações Possíveis de permissões no Linux

Então se representarmos r, w  e x como 4, 2 e 1, note que a permissão passa a ser atribuída conforme a soma dos campos no modo octal. Note estes exemplos:

Exemplos de permissões definidas com método octal
Exemplos de permissões definidas com método octal

Então quando olhamos desta forma, é mais simples de compreendermos, pois se você precisar definir as permissões para um arquivo no formato 755, você sabe que se aplica 7 para o proprietário, 5 para o grupo do proprietário e 5 para outros usuários quaisquer de outros grupos. Logo você definiu rwx par o proprietário, r-x para o grupo do proprietário e r-x para os demais usuários de outros grupos.

Então veja essa tabela que representa uma estrutura de arquivos:

Conjuntos de permissões de arquivos ou diretórios no Linux
Conjuntos de permissões de arquivos ou diretórios no Linux

Para alterar as permissões do arquivo, utilizamos o comando chmod. Podemos alterar as permissões utilizando método diferencial, atribuição direta ou octal.

Sintaxe: chmod [parâmetros] <arquivo>

Antes de apresentar cada método, as letras seguintes serão utilizadas em pelo menos dois métodos:

  • A   Todos
  • U   Usuário
  • G   Grupo
  • O   Outros
  • +   Adicionar permissão
  • –    Remover permissão
  • =    Igualdade ou Atribuição

 

Assim podemos utilizar o comando chmod:

# chmod 755 teste.sh

Eu já disse isso antes: Podemos até dar mais exemplos, até enjoar! 🙂 :

# chmod  400 teste.sh

Resultará: r——– Leitura apenas para o usuário proprietário, root pode mudar isso.

# chmod  444 teste.sh

Resultará: r–r–r– Leitura para o usuário proprietário, grupo do proprietário e outros usuários.

# chmod  600 teste.sh

Resultará: rw——- Leitura e gravação apenas para o usuário proprietário.

# chmod  620 teste.sh

Resultará: -rw–w—- Leitura e gravação para o usuário proprietário, gravação para o grupo do proprietário.

# chmod  640 teste.sh

Resultará: -rw-r—– Leitura e gravação para o usuário proprietário, e leitura para o grupo do proprietário.

# chmod  644 teste.sh

Resultará: rw-r–r– Leitura e execução para o usuário proprietário, leitura para o grupo do proprietário e leitura para outros usuários.

# chmod  770 teste.sh

Resultará: -rwxrwx— Leitura e gravação e execução para o usuário proprietário, leitura gravação e execução para o grupo do proprietário e nenhuma para outros usuários.

# chmod  777 teste.sh

Resultará: -rwxrwxrwx Permissão total para usuário proprietário, grupo do proprietário e outros.

Basta?!

Você pode de repente decidir alterar as permissões logo para uma série de arquivos, ou um diretório todo e para isso, utilizará recursão. Para isso, utilize o no comando chmod, parâmetro -R antes das definições de permissões. Cuida com esse recurso, pode ser uma benção e ao mesmo tempo uma maldição!

Acredito que estas informações serão bem práticas para você!

[]’s

 

2 comentários

Deixe um comentário

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.