Neste tutorial rápido, veremos como podemos usar chmod comando em uma máquina Ubuntu para encontrar, modificar e remover as permissões do usuário de arquivos específicos que existem no sistema de arquivos do usuário. Vamos jogar com várias condições para que possamos dominar o básico chmod comandos que podem tornar nossa vida cotidiana mais fácil com o Ubuntu.
Permissões Linux
As permissões do Linux são um grande conjunto de regras simples de entender se entendermos os direitos básicos. Os três pontos principais que precisamos entender para saber como funcionam as permissões do Linux são:
- O elemento para o qual as permissões foram definidas
- Quais ações podem ser realizadas com uma permissão
- Quem pode realizar quais ações
Existem dois elementos básicos no sistema de arquivos Linux:
- Diretórios
- arquivos
Existem três ações que podem ser realizadas:
- Leitura
- Escreva
- Executar. Além de executar scripts, as mesmas ações são necessárias para criar arquivos e outras pastas dentro dele
Os usuários que podem realizar essas ações são:
- Dono do arquivo
- Grupo do proprietário do arquivo
- Usuário que não está associado ao grupo proprietário ou ao próprio proprietário
Para ver as permissões relacionadas a um arquivo, execute o seguinte comando:
ls -lAqui está o que recebemos de volta com este comando:
Encontrar permissão para arquivos
Na saída, os primeiros 10 caracteres apresentam a permissão para o arquivo:
- O primeiro caractere, que é '-' neste caso, significa que este é um arquivo. Para um diretório, isso seria um 'd'.
- Os próximos nove caracteres representam permissões para o proprietário, o grupo do proprietário e outros, respectivamente.
Alterando Permissões
A sintaxe para modificar a permissão de um arquivo é semelhante a:
arquivo de permissões chmod [arquivo 2] ..Representação octal para permissões
Podemos apresentar as permissões como um número octal. Por exemplo, para definir permissões de leitura, gravação e execução para o proprietário, permissões de leitura e gravação para seu grupo e nenhuma permissão para outros, para um olá.arquivo txt, vamos executar o seguinte comando:
sudo chmod 760 olá.TXTDepois de executar o comando acima e tentar ler um arquivo com uma conta de não proprietário usando o seguinte comando:
sudo -u notowner-user mais olá.TXTObteremos o seguinte erro:
Olá.txt: Permissão negadaMas de onde vem esse número? Cada dígito desse número representa um conjunto de permissões. Vamos ver como eles foram derivados:
- 0: Significa sem permissão
- 1: Significa o executar permissão
- 2: Significa o Escreva permissão
- 4: Significa o leitura permissão
Para atribuir permissões de leitura, gravação e execução para o proprietário, atribuímos a ele o número 7 (= 4 + 2 + 1). Vamos entender melhor isso em uma tabela de dígitos:
Número | Binário | Leitura | Escreva | Executar |
0 | 000 | NÃO | NÃO | NÃO |
1 | 001 | NÃO | NÃO | SIM |
2 | 010 | NÃO | SIM | NÃO |
3 | 011 | NÃO | SIM | SIM |
4 | 100 | SIM | NÃO | NÃO |
5 | 101 | SIM | NÃO | SIM |
6 | 110 | SIM | SIM | NÃO |
7 | 111 | SIM | SIM | SIM |
A tabela acima é muito clara no que cada uma representa em termos de permissões de arquivo.
Representação de caracteres para permissões
Podemos apresentar as permissões como um número octal. Por exemplo, para definir permissões de leitura, gravação e execução para o proprietário, permissões de leitura e gravação para seu grupo e nenhuma permissão para outros, para um olá.arquivo txt, vamos executar o seguinte comando:
sudo chmod u = rwe, g = rw, o-rwx olá.TXTPara adicionar permissões a um usuário existente, também podemos fazer:
sudo chmod g + w olá.TXTAqui, a permissão de gravação estava sendo atribuída ao grupo de usuários do proprietário do arquivo.
Mudanças de permissão recursiva
Também podemos alterar as permissões para o arquivo contido em um diretório específico com um único comando. Para modificar as permissões de cada arquivo e pasta em um diretório fornecido de uma vez, use sudo chmod com -R:
sudo chmod 777 Directory / *Podemos ver a seguinte saída que reflete claramente a mudança nas permissões do arquivo:
Alterando recursivamente as permissões de arquivo
Conclusão
Nesta lição, vimos como podemos modificar as permissões de um arquivo e, se necessário, fazê-lo recursivamente. Nós entendemos os conceitos básicos por trás de como as permissões do Linux, que podem nos ajudar muito em nosso trabalho diário.