unix permissions file permissions unix with examples
Permissões Unix: Saiba quais são as diferentes permissões de arquivo no Unix
O Unix é um sistema multiusuário onde os mesmos recursos podem ser compartilhados por diferentes usuários.
Todas as permissões no Unix são baseadas na restrição de acesso a arquivos e pastas específicos para usuários ou grupos de usuários específicos.
=> Clique aqui para ver a série completa de tutoriais de Unix
O que você aprenderá:
- Permissões Unix: Permissões de arquivo com exemplos
- Ferramentas de linha de comando Unix para alterar as permissões de acesso
- Conclusão
- Leitura recomendada
Permissões Unix: Permissões de arquivo com exemplos
O acesso a um arquivo tem três níveis:
- Permissão de leitura - Se autorizado, o usuário pode ler o conteúdo do arquivo.
- Permissão de gravação - Se autorizado, o usuário pode modificar o arquivo.
- Permissão de execução - Se autorizado, o usuário pode executar o arquivo como um programa.
Cada arquivo está associado a um conjunto de identificadores que são usados para determinar quem pode acessar o arquivo:
- ID do usuário (UID) - especifica o usuário que possui o arquivo. Por padrão, este é o criador do arquivo.
- ID do grupo (GID) - Especifica o grupo de usuários ao qual o arquivo pertence.
Finalmente, existem três conjuntos de permissões de acesso associados a cada arquivo:
- Permissão do usuário - Especifica o nível de acesso concedido ao usuário que corresponde ao UID do arquivo.
- Permissão de grupo - Especifica o nível de acesso concedido a usuários em grupos que correspondem ao GID do arquivo.
- Permissão de outros - Especifica o nível de acesso concedido aos usuários sem um UID ou GID correspondente.
Juntos, esse esquema de controles de acesso torna o sistema Unix extremamente seguro, ao mesmo tempo que fornece a flexibilidade necessária para um sistema multiusuário.
O ls -l O comando pode ser usado para ver as permissões associadas a cada um dos arquivos na pasta atual.
A saída de exemplo deste comando é fornecida abaixo.
Exemplo:
sinalizadores links proprietário tamanho do grupo nome da data de modificação
total of 24 drwxr-xr-x 7 user staff 224 Jun 21 15:26 . drwxrwxrwx 8 user staff 576 Jun 21 15:02. -rw-r--r-- 1 user staff 6 Jun 21 15:04 .hfile drwxr-xr-x 3 user staff 96 Jun 21 15:17 dir1 drwxr-xr-x 2 user staff 64 Jun 21 15:04 dir2 -rw-r--r-- 1 user staff 39 Jun 21 15:37 file1 -rw-r--r-- 1 user staff 35 Jun 21 15:32 file2
Nesta saída, o 'total 24' indica o número total de blocos ocupados pelos arquivos listados.
As colunas restantes são:
- bandeiras - Uma coleção de sinalizadores que indicam o modo de arquivo e as permissões do arquivo.
- links - O número de links associados ao arquivo.
- proprietário - O UID que possui o arquivo.
- grupo - Os GIDs associados ao arquivo.
- Tamanho - O tamanho do arquivo em bytes.
- data modificada - O mês, data, hora e minuto da última modificação no arquivo.
- nome - O nome do arquivo ou diretório.
Os sinalizadores na primeira coluna especificam o modo de arquivo e os diferentes conjuntos de permissões:
# 1) O primeiro caractere indica o tipo de arquivo:
o que é um arquivo .jnlp
- -: representa um arquivo comum
- d: representa um diretório
- c: representa um arquivo de dispositivo de caractere
- b: representa um arquivo de dispositivo de bloco
# 2) Os próximos três caracteres indicam as permissões do usuário:
- O primeiro destes três indica se o usuário tem permissão de leitura:
-
- -: indica que o usuário não tem permissão de leitura.
- r: indica que o usuário tem permissão de leitura.
-
- O segundo caractere indica se o usuário tem permissão de gravação:
-
- -: indica que o usuário não tem permissão de gravação.
- w: indica que o usuário tem permissão de gravação.
-
- O último caractere indica se o usuário executou permissão:
-
- -: indica que o usuário não tem permissão para executar.
- x: indica que o usuário executou a permissão.
-
# 3) Os próximos três caracteres indicam permissões de grupo, semelhantes às permissões de usuário acima.
# 4) Os três caracteres finais indicam permissões públicas, semelhantes às permissões de usuário acima.
No caso de o arquivo ser um arquivo comum, a permissão de leitura permite que o usuário abra o arquivo e examine seu conteúdo. A permissão de gravação permite que o usuário modifique o conteúdo do arquivo. E a permissão de execução permite que o usuário execute o arquivo como um programa.
Caso o arquivo seja um diretório, a permissão de leitura permite que o usuário liste o conteúdo do diretório. A permissão de gravação permite que os usuários criem um novo arquivo no diretório e removam um arquivo ou diretório dele. A permissão de execução permite que o usuário execute uma pesquisa no diretório.
Ferramentas de linha de comando Unix para alterar as permissões de acesso
O Unix fornece várias ferramentas de linha de comando para alterar as permissões de acesso:
Observe que apenas o proprietário do arquivo pode alterar as permissões de acesso.
1. chmod : alterar as permissões de acesso ao arquivo
- Descrição: Este comando é usado para alterar as permissões do arquivo. Essas permissões são permissões de leitura, gravação e execução para o proprietário, grupo e outros.
- sintaxe (modo simbólico) :
chmod (ugoa)((+-=)(mode)) file
- O primeiro parâmetro opcional indica quem - pode ser (u) ser, (g) roup, (o) thers ou (a) ll
- O segundo parâmetro opcional indica opcode - pode ser para adicionar (+), remover (-) ou atribuir (=) permissão.
- O terceiro parâmetro opcional indica o modo - pode ser (r) ead, (w) rite ou e (x) ecute.
Exemplo :Adicionar permissão de gravação para usuário, grupo e outros para arquivo1
$ ls -l
-rw-r – r– 1 equipe de usuário 39 21 de junho 15:37 arquivo1
-rw-r – r– 1 equipe de usuário 35 21 de junho 15:32 arquivo 2
$ chmod ugo+w file1 $ ls -l
-rw-rw-rw- 1 usuário da equipe 39 21 de junho 15:37 arquivo1
-rw-r – r– 1 equipe de usuário 35 21 de junho 15:32 arquivo 2
$ chmod o-w file1 $ ls -l
-rw-rw-r– 1 equipe do usuário 39 21 de junho 15:37 arquivo1
-rw-r – r– 1 equipe de usuário 35 21 de junho 15:32 arquivo 2
- sintaxe (modo numérico) :
chmod (mode) file
- O modo é uma combinação de três dígitos - o primeiro dígito indica a permissão para o usuário, o segundo dígito para o grupo e o terceiro dígito para outros.
- Cada dígito é calculado adicionando as permissões associadas. A permissão de leitura é ‘4’, a permissão de gravação é ‘2’ e a permissão de execução é ‘1’.
- Exemplo :Dê permissão de leitura / gravação / execução para o usuário, permissão de leitura / execução para o grupo e permissão de execução para outros.
$ ls -l
-rw-r – r– 1 equipe de usuário 39 21 de junho 15:37 arquivo1
-rw-r – r– 1 equipe de usuário 35 21 de junho 15:32 arquivo 2
$ chmod 777 file1 $ ls -l
-rwxrwxrwx 1 equipe de usuário 39 21 de junho 15:37 arquivo1
-rw-r – r– 1 equipe de usuário 35 21 de junho 15:32 arquivo 2
2. chown : altera a propriedade do arquivo.
- descrição : Apenas o proprietário do arquivo tem o direito de alterar a propriedade do arquivo.
- sintaxe : chown (proprietário) (arquivo)
- Exemplo :Altere o proprietário do arquivo1 para o usuário2 assumindo que ele pertence atualmente ao usuário atual
$ chown user2 file1
3. chgrp : altera a propriedade de grupo do arquivo.
- descrição : Apenas o proprietário do arquivo tem o direito de alterar a propriedade do arquivo.
- sintaxe : chgrp (grupo) (arquivo)
- Exemplo :Altere o grupo de arquivo1 para grupo2 assumindo que ele pertence atualmente ao usuário atual.
$ chgrp group2 file1
Ao criar um novo arquivo, o Unix define as permissões de arquivo padrão. O Unix usa o valor armazenado em uma variável chamada umask para decidir as permissões padrão. O valor umask diz ao Unix qual dos três conjuntos de permissões precisa ser desabilitado.
O sinalizador consiste em três dígitos octais, cada um representando as máscaras de permissões para o usuário, o grupo e outros. As permissões padrão são determinadas subtraindo o valor umask de '777' para diretórios e '666' para arquivos. O valor padrão do umask é '022'.
4. umask : alterar as permissões de acesso padrão
java como fazer uma lista
- Descrição: Este comando é usado para definir as permissões de arquivo padrão. Essas permissões são permissões de leitura, gravação e execução para o proprietário, grupo e outros.
- sintaxe : umask (modo)
- O modo é uma combinação de três dígitos - o primeiro dígito indica a permissão para o usuário, o segundo dígito para o grupo e o terceiro dígito para outros.
- Cada dígito é calculado adicionando as permissões associadas. A permissão de leitura é ‘4’, a permissão de gravação é ‘2’ e a permissão de execução é ‘1’.
Exemplo :Dê permissão de leitura / gravação / execução para o usuário, e nenhuma permissão para grupo ou outros. ou seja, a permissão para arquivos será de 600 e para diretórios será de 700.
$ umask 077
- Exemplo :Dê permissão de leitura / gravação / execução ao usuário, permissão de leitura / execução para grupo ou outros para diretórios e permissão somente leitura para grupo ou outros para outros arquivos. ou seja, a permissão para arquivos será 644 e para diretórios será 755.
$ umask 022
Conclusão
As permissões no Unix podem ser para o “usuário”, “grupo” e para todos os usuários chamados “Outro”.
Os detalhes como sinalizadores de permissão, contagem de links, proprietário, grupo, tamanho, data da última modificação, arquivo, etc., podem ser obtidos simplesmente com o comando “ls-l”.
=> Clique aqui para ver a série completa de tutoriais de Unix
PREV Tutorial | PRÓXIMO Tutorial
Leitura recomendada
- Permissões de acesso a arquivos Unix: Unix Chmod, Chown e Chgrp
- Cortar comando no Unix com exemplos
- Manipulação de arquivos no Unix: Visão geral do sistema de arquivos Unix
- Comandos Unix: Comandos Unix básicos e avançados com exemplos
- Find Command in Unix: Find Files with Unix Find File (exemplos)
- Tutorial do UNIX para iniciantes (mais de 20 vídeos de treinamento aprofundado do Unix)
- Comandos de processamento de texto Unix: Filtros Unix com exemplos
- Caracteres especiais do Unix ou metacaracteres para manipulação de arquivos