Comando chmod – Alterar permissões pelo terminal – Linux LPI 1
Alterar permissões com o comando chmod no Linux
O Linux / Unix possui um sistema de permissões de acesso a arquivos e diretórios relativamente complexo.
Neste sistema, existem três tipos de permissões básicas: leitura, escrita (gravação) e execução, representados respectivamente pelos caracteres r, w e x:
- Leitura (Read): r
- Escrita (Write): w
- Execução (Execute): x
- Sem permissão: –
Vejamos como exemplo a listagem de arquivos de um diretório no meu sistema usando o comando ls -l:
$ ls -l
Os tipos mais comuns incluem os da tabela a seguir:
Código
|
Tipo de arquivo
|
–
|
Arquivo normal de dados, como texto, imagens, vídeos, programas executáveis, arquivos zipados, etc.
|
d
|
Diretório. Os diretórios são arquivos também, porém contendo nomes de arquivos e ponteiros para inodes do disco.
|
l
|
Link simbólico (symlink) – um arquivo que aponta para um outro arquivo ou diretório
|
p
|
Pipe nomeado. Um pipe permite que dois programas em execução se comuniquem entre si, escreverndo e lendo dados no pipe.
|
s
|
Socket. Um socket é parecido com um pipe nomeado, porém é usado em comunicações de rede.
|
b
|
Dispositivo de bloco, o qual é um arquivo que corresponde a um dispositivo de hardware para o qual os dados são transferidos (e lidos) em blocos de bytes.
|
c
|
Dispositivo de caractere, que é um arquivo que corresponde a um dispositivo de hardware para o qual os dados são transferidos (e lidos) em unidades de um byte.
|
A ordem das permissões em cada conjunto é sempre a mesma: rwx (read, write e execute)
No exemplo da tabela acima, temos:
- Tipo: Diretório (d)
- Permissões do proprietário: Total – Leitura, gravação e execução (rwx)
- Permissões do grupo: Leitura e execução (r-x)
- Permissões dos outros: Leitura e execução (r-x)
A permissão de Leitura permite que o usuário possa ler o conteúdo do arquivo, ou no caso de um diretório, visualizar seu conteúdo.
A permissão de Gravação permite que o usuário possa alterar o conteúdo do arquivo, ou no caso de um diretório, criar, renomear e excluir arquivos que ele contenha.
A permissão de Execução permite que o usuário possa executar um arquivo – um programa ou script – , ou no caso de um diretório, acessá-lo.
A maioria das permissões não se aplica ao usuário root. O root pode ler ou alterar qualquer arquivo no computador, mesmo arquivos que ninguém tenha permissão de acessar (permissão negada totalmente).
Podemos alterar as permissões de acesso de um arquivo ou diretório usando o comando chmod (change mode).
Alterando permissões de acesso a arquivos – comando chmod
Sintaxe:
chmod [opções] [modo] nomes_arquivos
As opções são similares às dos comandos chgrp e chown. Geralmente usamos a opção -R (recursivo) para alterar as permissões de todos os arquivos em uma árvore de diretórios de uma só vez.
Há duas formas de especificarmos o modo (permissões) que será aplicado aos arquivos: modo octal (numérico) ou modo simbólico (códigos). Veremos as duas formas neste artigo.
Modo octal
Por exemplo:
Usamos um valor desses para cada conjunto de permissões, ou seja, um número indicará a permissão do proprietário do arquivo, o segundo valor a permissão do grupo e o terceiro valor a permissão do resto do mundo.
Exemplos
Vejamos exemplos da aplicação do modo octal com o comando chmod:
1. Desejamos aplicar permissão de leitura e gravação ao proprietário do arquivo curriculum e a seu grupo, e somente leitura aos outros:
# chmod 664 curriculum
# chmod 640 curriculum
Note que o zero significa “sem permissão alguma” para os outros.
3. Dar permissão total para todos no arquivo:
# chmod 777 curriculum
4. Dar permissão de leitura e execução em um script chamado prog01.sh para o proprietário e grupo, e acesso somente execução aos outros:
# chmod 551 prog01.sh
Vejamos agora como alterar as permissões usando o modo literal (códigos) do comando chmod.
Modo literal (simbólico)
Somente o proprietário do arquivo e o superusuário root podem alterar permissões de um arquivo.
Outros conceitos e comandos relacionados com permissões de acesso a arquivos no Unix são:
Muito bom. Posso simplificar dando um chmod 0 para retirar as permissões dos arquivos ao invés de chmod 000 ? Muito boa a vídeo-aula. Obrigado.
Fabio estou tentando prosseguir com as videos aulas mas ao clicar em outra vídeo aula so aparece a da instalação do Debian, como faço para ver as outras?
Tente acessar diretamente por esse link: http://www.bosontreinamentos.com.br/category/linux/
Se não funcionar, me avise!!
Gostaria que se o senhor podesse e tirar essa dúvido..
em um local de trabalho, existe um samba 4 no linux onde possui 3 usuarios existe uma situação que o usuario estacao 01 quando criar uma pasta ninguem mais consegue edita-la como faco pra resolver isso???
GRATO DESDE JA
ROMARIO HAVYNER
Excelente material!
Obrigado Cristiano!