Compreendendo as permissões de arquivo Linux e a propriedade

Compreendendo as permissões de arquivo Linux e a propriedade
O sistema operacional Linux, que é um clone do UNIX, é desenvolvido para lidar com vários usuários com recursos multitarefa. Isso significa que mais de um usuário pode funcionar nesta operação ao mesmo tempo em que o computador está conectado a uma rede ou internet. Os usuários remotos podem se conectar com o computador que contém o sistema operacional Linux através do SSH e trabalha no sistema. É muito importante manter a segurança quando vários usuários funcionam no mesmo sistema operacional ao mesmo tempo. Muitos recursos de segurança internos existem no sistema operacional Linux que podem ser usados ​​quando o acesso local ou remoto é concedido de diferentes usuários. Os usuários do Linux precisam entender o conceito de permissões de arquivo e a propriedade do arquivo para fornecer segurança no nível do sistema de arquivos. Como os usuários do Linux podem visualizar e modificar as permissões, e a propriedade do arquivo e das pastas é mostrada neste artigo.

Pré -requisitos:

Os usuários precisam saber a maneira de executar o comando do terminal e o conhecimento básico de criar arquivos e pastas no sistema operacional Linux para executar e entender os comandos usados ​​neste artigo.

Conteúdo deste artigo:

O conceito e as tarefas a seguir relacionados à permissão e propriedade do arquivo são abordados neste artigo.

  1. Tipos de usuários
  2. Tipos de permissão
  3. Verifique as permissões
  4. Altere a permissão usando chmod
  5. Alterar a propriedade usando chown

Tipos de usuários:

Três tipos de usuários existem no sistema operacional Linux, que é mencionado abaixo.

Proprietário:

O usuário que cria o arquivo ou pasta é o proprietário desse arquivo ou pasta, e o proprietário pode permitir que os outros tipos de usuários acessem esse arquivo e pasta. É denotado por 'você'.

Grupo:

Cada usuário pode pertencer a um determinado grupo no Linux. Portanto, quando um usuário cria um arquivo ou pasta, outros membros do grupo onde o usuário pertence pode acessar o arquivo ou a pasta. Quando vários usuários trabalham em uma pasta específica, é melhor criar um grupo com esses usuários para acessar essa pasta corretamente. É denotado por 'g'.

Outros/tudo:

Indica qualquer usuário que não seja o proprietário de um arquivo ou pasta específica e não pertence ao grupo do arquivo ou da pasta. Se o proprietário do arquivo ou pasta fornecer qualquer permissão de acesso a outras pessoas, qualquer usuário poderá fazer esse acesso específico apenas. 'o'é usado para denotar outros usuários e'a'é usado para denotar todos os usuários.

Tipos de permissão:

Existem três tipos de permissão no sistema Linux, que é mencionado abaixo.

Ler:

Esta permissão é usada para ler qualquer arquivo ou pasta apenas. É denotado por 'r'Quando é definido pelo caráter, e é denotado por 4 Quando é definido por um número.

Escrever:

Esta permissão é usada para escrever, anexar ou substituir qualquer arquivo ou pasta. É denotado por 'c'Quando é definido pelo personagem, e é denotado por 2 Quando é definido pelo número. Se o usuário tiver que escrever permissão para um arquivo, mas não precisará escrever permissão na pasta em que o arquivo está localizado, o usuário pode modificar o conteúdo apenas do arquivo, mas ele/ela não poderá renomear , mova ou exclua o arquivo.

Executar:

Esta permissão é usada para executar apenas qualquer arquivo. É denotado por 'x'Quando é definido pelo personagem, e é denotado por 1 Quando é definido pelo número.

Verifique as permissões:

Execute o seguinte comando para verificar as permissões de todos os arquivos e forragens do diretório atual.

$ ls -l

A saída mostra sete colunas. A primeira coluna exibe as permissões de um arquivo e pastas específicos. A primeira coluna tem quatro partes que contêm 10 bits. A primeira parte contém 1 bit que indica o arquivo ou pasta ou link simbólico. A pasta é indicada pelo personagem 'd', o arquivo é indicado por'-'e o link é indicado pelo personagem'eu'. A segunda parte contém 3 bits que contêm os bits de permissão para o proprietário do arquivo ou pasta. A terceira parte contém 3 bits que contêm os bits de permissão para os usuários do grupo. A quarta parte contém 3 bits que contêm bits de permissão para outros usuários. Os bits de permissão da lista de diretórios atuais parecerão a primeira coluna da imagem a seguir.


De acordo com os bits de permissão acima, o primeiro bit indica que mostra as permissões de um arquivo. Os próximos três bits indicam que o proprietário do arquivo leu, escrever e acessar permissões. Os próximos três bits indicam que os usuários do grupo leram e escrevem permissões. Os últimos três bits indicam que outros usuários podem ler apenas o arquivo. Como os bits de permissão padrão podem ser alterados usando diferentes comandos Linux são mostrados na próxima parte do artigo.

Altere a permissão usando o CHMOD:

chmod O comando é usado para alterar os bits de permissão do arquivo ou pasta. A forma completa deste comando é Para alterar o modo de arquivo. O proprietário do arquivo e o usuário root podem alterar os bits de permissão do arquivo e da pasta. Qualquer permissão para qualquer usuário pode ser dada e revogada para o arquivo e a pasta usando chmod.

Sintaxe:

chmod [permissão] [caminho do arquivo ou pasta]

Os bits de permissão podem ser definidos por referências explícitas e binárias, que são explicadas na próxima parte deste tutorial.

Defina permissões no modo simbólico:

'você','g', e 'o'Os caracteres são usados ​​para tipos de usuário e'r','c', e 'xOs caracteres são usados ​​para tipos de permissão no modo simbólico. Como a permissão pode ser definida para arquivo e pasta é mostrada na próxima parte do tutorial. A tabela a seguir mostra a lista de símbolos matemáticos que são usados ​​para definir, redefinir e remover bits de permissão para o arquivo ou pasta.

Operador Propósito
+ É usado para adicionar ou atribuir as permissões para o arquivo ou pasta específica.
= É usado para reatribuir as permissões para o arquivo ou pasta específica.
- É usado para remover as permissões do arquivo ou pasta específica.

Permissões de arquivo:

Alguns exemplos de add e remover bits de permissão do arquivo são mostrados nos exemplos a seguir. Execute os seguintes comandos para verificar os bits de permissão atuais do caminho de diretório específico, /Projects/bin/ que existe no sistema. Este comando retorna a longa lista de arquivos e pastas em ordem inversa com os bits de permissão.

$ ls -lr

A saída mostra que o Projetos/Bin diretório contém duas pastas e sete arquivos.

Exemplo 1: Definir permissão Executar para o proprietário de um arquivo

Execute os seguintes comandos para definir o executar (x) Bit de permissão para o proprietário (u) do arquivo, aplicativo.py, e verifique os bits de permissão novamente depois de executar o chmod comando.

$ chmod u+x aplicativo.py
$ ls -lr

A saída a seguir mostra que os bits de permissão para aplicativo.py são alterados para
- r w x r w - r - -. O executar (x) A permissão é atribuída ao proprietário.

Exemplo 2: Defina a permissão de gravação e execute para qualquer usuário de um arquivo

Execute o seguinte comando para definir Escreva (W) e executar (x) permissões para todos Usuários para o arquivo App2.py e verifique os bits de permissão novamente depois de executar o chmod comando.

$ chmod a+wx app2.py
$ ls -lr

A saída a seguir mostra que os bits de permissão para App2.py são alterados para
- r w x r w x r w x. O escritor) e executar (x) As permissões são atribuídas a qualquer usuário para este arquivo.

Exemplo 3: Redefinir permissão para usuários de grupo de um arquivo

Execute o seguinte comando para redefinir as permissões para grupo Usuários para o arquivo APP3.py e verifique os bits de permissão novamente depois de executar o chmod comando. Aqui o executar (x) O bit de permissão será definido apenas para o grupo usuários e Leia (R) e escritor) As permissões serão revogadas.

$ chmod g = x app3.py
$ ls -lr

A saída a seguir mostra que os bits de permissão para APP3.py são alterados para
- r w - - - x r - -. A permissão de execução (x) é atribuída apenas para os usuários do grupo.

Exemplo 4: A permissão de leitura é revogada de outros

Execute o seguinte comando para remover Leia (R) Bit de permissão para outros para o arquivo App4.py e verifique os bits de permissão novamente depois de executar o chmod comando.

$ chmod o-r app4.py
$ ls -lr

A saída a seguir mostra que os bits de permissão para App4.py são alterados para
- r w - r w - - - -. O Leia (R) A permissão é revogada para os outros.

Permissões de pasta:

Os bits de permissão podem ser definidos, redefinir e remover para a pasta como os arquivos que são mostrados nos comandos CHMOD acima.

Exemplo 5: Defina, redefinir e revogar a permissão para a pasta

Execute os seguintes comandos para definir Escreva (x) permissão para outros, Redefinir permissão para grupo usuários atribuindo Leia (R) apenas permissão e remova executar (x) permissão para o proprietário da pasta, modelos.

$ chmod o+x modelos
$ chmod g = r modelos
$ chmod u-x modelos
$ ls -lr

A saída a seguir mostra que os bits de permissão para o modelos Pasta é alterada para d r w - r - - r - x. O executar (x) A permissão está definida para outros, Leia (R) A permissão é redefinida para grupo usuários e executar (x) A permissão é revogada para o proprietário.

Defina permissões no modo numérico:

Os bits de permissão de arquivo e pasta são definidos ou redefinidos usando um número octal de três dígitos. No modo simbólico, um ou mais bits de permissão podem ser definidos ou redefinidos ou removidos apenas para um tipo de usuário específico. No modo numérico, os bits de permissão para todos os três tipos de usuários são alterados por um único comando. A tabela a seguir mostra diferentes tipos de permissão que são definidos por valores numéricos.

Valor numérico Tipo de permissão
0 Indica sem permissão.
1 Indica apenas permissão de execução (x).
2 Indica apenas a permissão de gravação (w).
3 Indica permissões de gravação (w) e execução (x).
4 Indica apenas a permissão de leitura (r).
5 Indica permissões de leitura (r) e execução (x).
6 Indica as permissões de leitura (r) e gravação (w).
7 Indica todas as três permissões (leia (r), escreva (w) e execute (x)).

Permissão do arquivo:

Alguns exemplos para definir ou redefinir bits de permissão do arquivo usando valores numéricos são explicados na próxima parte deste artigo.

Exemplo 1: Set ' - R W X R - X - W -' Permissão para um arquivo

$ chmod 752 app5.py
$ ls -l

A saída a seguir mostra que Leia (R), escritor) e executar (x) As permissões são definidas para o proprietário de App5.py. Leia (R) e executar (x) As permissões estão definidas para grupo Usuários do App5.py. Escreva (W) A permissão está definida para qualquer usuário do App5.py.

Exemplo 2: set ' - r w x r - - - - -' permissão para um arquivo

$ chmod 740 app6.py
$ ls -lr

A saída a seguir mostra que Leia (R), escritor) e executar (x) As permissões são definidas para o proprietário de App6.py. Leia (R) A permissão está definida para grupo Usuários do App6.py. Nenhuma permissão está definida para qualquer usuário do App6.py.

Exemplo -3: set ' - r - - - - - - - -' Permissão para um arquivo

$ chmod 400 app5.py
$ ls -lr

A saída a seguir mostra que Leia (R) A permissão é definida apenas para o proprietário, e as outras permissões de outros usuários são removidas para o arquivo, App5.py.

Exemplo -4: Set ' - R - - R - - R - -' Permissão para um arquivo

$ chmod 444 app6.py
$ ls -lr

A saída a seguir mostra que Leia (R) A permissão é para todos os tipos de usuários, e outras permissões são revogadas para o arquivo, app6.py.

Exemplo 5: Set '- R W X R W X R W X' Permissão para um arquivo

$ chmod 777 app7.py
$ ls -lr

A saída a seguir mostra que Leia (R), escritor), e executar (x) As permissões são definidas para todos os tipos de usuários do app7.py.

Permissão de pasta:

$ chmod 442 modelos
$ ls -lr

A saída a seguir mostra que Leia (R) A permissão está definida para usuários de proprietários e grupos e Escreva (W) A permissão está definida para qualquer usuário da pasta, modelos.

Alterar a propriedade usando Chown:

chown O comando é usado para alterar a propriedade do usuário e usuário do grupo para qualquer arquivo. Este comando pode ser usado de maneiras diferentes para mudar a propriedade dos usuários.

  • Quando apenas o proprietário é usado que é um nome de usuário ou ID com este comando, o proprietário do arquivo será alterado e as informações do grupo permanecerão inalteradas.
  • Quando o proprietário é usado com um cólon (:) e um nome de grupo com este comando, a propriedade de usuários de usuários e grupos será alterada.
  • Quando o proprietário é usado com um cólon (:) Somente sem nenhum nome de grupo com este comando, a propriedade do arquivo será alterada pelo proprietário e pelo grupo do proprietário.
  • Quando o nome do grupo é usado com um cólon (:) Somente sem nenhum proprietário com este comando, a propriedade do arquivo será alterada apenas para o grupo.
  • Quando um cólon (:) é usado apenas sem nenhum nome de proprietário e grupo com este comando, a propriedade permanecerá inalterada.

Sintaxe:

CHOWN [Option] [Proprietário] [: [Grupo]] Arquivo]

Algumas opções deste comando são dadas abaixo que podem ser usadas para alterar a propriedade do arquivo.

Opção Propósito
-de = current_owner: current_group É usado para alterar o proprietário e/ou grupo de cada arquivo somente se o proprietário e/ou o grupo atual corresponderão ao proprietário e grupo definidos.
-C, -Changes Ele cria um relatório se alguma alteração for feita na propriedade.
-f, -Silent, -quiet Ele removerá a maioria das mensagens de erro.
-R, -recursive Funcionará em arquivos e diretórios recursivamente.
-eu Isso atravessará todos os links simbólicos para um diretório.
-P Não vai atravessar nenhum link simbólico.
-ajuda Ele exibirá as informações de ajuda.
-versão Ele exibe informações de versão.

Torne -se um superusuário:

Você tem que se tornar um superusuário para executar o chown comando. Você pode ser um superusuário por um curto período de tempo executando os seguintes comandos, mas precisa saber a senha raiz para o comando específico.

'su'Comando:
A forma completa de su é um Usuário substituto, E este comando pode ser usado para fazer com que os privilégios do superusuário realizem algumas tarefas administrativas. Você precisa fornecer a senha raiz depois de executar este comando para obter o privilégio Root. Depois de executar o comando, a nova sessão do shell será criada para o superusuário. A sessão do superusuário pode ser encerrada digitando saída comando.

'sudo'Comando:
A alternativa de su comando é o sudo comando. Um ou mais usuários podem receber o privilégio de raiz usando este comando. O usuário atual pode abrir o shell root su comando usando a opção -i com sudo comando. saída O comando termina o shell root e retorna ao shell do usuário atual.
A conta de usuário root está desativada por padrão no Ubuntu. Então, o sudo O comando é usado aqui para obter os privilégios root e executar o comando chown para definir a propriedade do arquivo.

Exemplo 1: Uso de Chown com o proprietário

$ ls -l
$ sudo chown yesmin c1.py
$ ls -l

O primeiro ls Comando mostra a propriedade atual dos arquivos que existem no código pasta. Aqui, Fahmida é o proprietário do arquivo C1.py Arquivo antes de executar o chown comando. Quando o ls O comando é executado após a execução do comando chown, então a propriedade é dada ao usuário, SimMin, e o nome do grupo permaneceu inalterado.

Exemplo 2: Uso de Chown com o proprietário e o cólon (:)

$ ls -l
$ sudo chown yesmin: c2.py
$ ls -l

O primeiro ls Comando mostra o proprietário atual e a propriedade do grupo de o c2.py arquivo. Aqui, o nome de propriedade do usuário e do grupo.py é Fahmida Antes de executar o chown comando. Quando o ls O comando é executado após a execução do comando, então a propriedade do usuário é dada a SimMin, e a propriedade do grupo é dada ao grupo do proprietário nomeado SimMin.

Exemplo 3: Uso de Chown com o grupo seguido de Colon (:)

$ ls -l
$ sudo chown: pygroup c3.py
$ ls -l

O primeiro ls Comando mostra o proprietário atual e a propriedade do grupo de o C3.py arquivo. Aqui, o nome de propriedade do usuário e do grupo C3.py é Fahmida Antes de executar o comando chown. Quando o ls O comando é executado após a execução do comando, então a propriedade do grupo é dada ao grupo do proprietário nomeado pygroup, e o nome de propriedade do usuário permanece inalterado.

Exemplo-4: Uso de Chown com o usuário e o grupo seguido de Colon (:)

$ ls -l
$ sudo chown fahmida: pygroup c2.py
$ ls -l

O primeiro ls Comando mostra o proprietário atual e a propriedade do grupo de o C2.py arquivo. Aqui, o nome de propriedade do usuário e do grupo C2.py é SimMin Antes de executar o chown comando. Quando o ls O comando é executado após a execução do comando, então a propriedade do usuário é dada a Fahmida, e a propriedade do grupo é dada a pygroup.

Exemplo 5: Uso de Chown com um cólon (:) apenas

$ ls -l
$ sudo chown: c3.py
$ ls -l

O primeiro ls Comando mostra o proprietário atual e a propriedade do grupo de o C3.py arquivo. Aqui, a propriedade do usuário é Fahmida, e a propriedade do grupo é pygroup de C2.py Antes de executar o chown comando. Quando o ls O comando é executado após a execução do comando, então a propriedade do usuário e do grupo permanece inalterada.

Conclusão:

Os usuários do Linux podem alterar a permissão e a propriedade de várias maneiras, que são mostradas usando diferentes comandos Linux neste artigo. Outro comando existe no Linux para alterar a propriedade dos usuários do grupo apenas para o arquivo. O comando é chgrp Isso não é explicado aqui. A tarefa de O CHGRP O comando pode ser feito facilmente usando o chown comando. Espero que o conceito de permissão e propriedade do arquivo do arquivo e da pasta no sistema operacional Linux seja liberado após a leitura deste artigo.