Como alterar as permissões de arquivos no Linux

Suraj Joshi 30 janeiro 2023
  1. Ver permissões de um arquivo em Linux
  2. Alterar permissões de arquivo/diretório com o comando chmod
Como alterar as permissões de arquivos no Linux

Linux é um sistema operacional no qual podemos ter vários usuários. Portanto, precisamos gerenciar as permissões de acesso para arquivos no Linux. Se um usuário não tem permissões de acesso e edição de um arquivo, às vezes podemos receber Permission denied error. Podemos alterar as permissões dos arquivos no Linux utilizando o utilitário de linha de comando chmod.

Ver permissões de um arquivo em Linux

Para visualizar as permissões de todos os arquivos e diretórios no diretório de trabalho atual, utilizamos o comando ls -l.

ls -l

Resultado:

-rw-rw-r-- 1 zeppy zeppy 123 Oct  4 20:47 1.sh
-rw-rw-r-- 1 zeppy zeppy  46 Sep 30 20:36 file.txt

A parte no início de cada arquivo representa a permissão para cada arquivo específico no local. Na saída, -rw-rw-r-- representa a permissão do arquivo.

  1. No início, - representa que o conteúdo é um arquivo
  2. rw- representa as permissões para o usuário.
  3. rw- representa a permissão para o grupo de usuários.
  4. r-- representa as permissões para outros.

O r representa a permissão de leitura, w representa a permissão de escrita, x representa a permissão de execução, e - não representa nenhuma permissão.

Como mostra a saída, user e group têm somente permissões de leitura e escrita, mas não executam a permissão, enquanto others têm somente permissões de leitura para ambos os arquivos no diretório de trabalho atual.

Alterar permissões de arquivo/diretório com o comando chmod

Sintaxe

chmod permissions filename

Aqui, permissions representam a permissão que queremos definir, e filename representa o nome do arquivo cuja permissão deve ser definida.

Podemos representar as permissões utilizando o modo absoluto ou utilizando o modo simbólico.

Exemplo: Definir permissões para arquivos utilizando o comando chmod

chmod 760 file.txt

Define as permissões de leitura, escrita e execução para o proprietário ou o usuário, permissões de leitura e escrita para o group, e nenhuma permissão para os outros para o arquivo file.txt. Aqui, as permissões são representadas utilizando o modo absoluto.

chmod u=rwx,g=rw,o=--- file.txt

Define as permissões de leitura, escrita e execução para o proprietário ou o usuário, permissões de leitura e escrita para o grupo, e nenhuma permissão para os outros utilizando o modo simbólico.

Exemplo: Definir permissões para diretórios utilizando o comando chmod

Para definir as permissões para todos os arquivos dentro de um diretório, usamos o comando chmod com a opção -R ou --recursive.

chmod -R 760 testdir

Ele define as permissões de leitura, escrita e execução para proprietário ou usuário, permissões de leitura e escrita para o grupo, e nenhuma permissão para os outros para o diretório testtdir utilizando o modo absoluto.

chmod -R u=rwx,g=rw,o=--- testdir

Define as permissões de leitura, escrita e execução para o proprietário ou para o usuário, permissões de leitura e escrita para o grupo e nenhuma permissão para os outros para o diretório testtdir utilizando o modo simbólico.

Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Artigo relacionado - Linux File