Diferença entre permissões de arquivo de três e quatro dígitos?

Diferença entre permissões de arquivo de três e quatro dígitos?

Recentemente, fiquei me perguntando qual é a diferença entre permissões de arquivo numérico de três e quatro dígitos. Obtenho as permissões numéricas executando stat --format "%a" $file_name.Qual é a diferença entre 0644 e 644?

Responder1

O primeiro dígito em uma permissão de quatro dígitos é a soma dedefinir ID do usuário (4),definir ID do grupo(2) epegajoso(1). Uma permissão de três dígitos é como uma permissão de quatro dígitos com o primeiro dígito definido como zero. Por isso:

  • 0644 é exatamente igual a 644.
  • 1644 é como 644, mas o sticky bit também está definido
  • 4644 é como 644, mas o bit de ID do usuário definido também está definido.

Exemplos de usos para as permissões de quarto dígito

Se um arquivo com ID de usuário definido for executado, ele será executado como se fosse pelo proprietário do arquivo, e não pelo usuário que executa a execução. Assim, por exemplo, /bin/mounté comumente propriedade do root e possui permissões 4755 onde o 4 significa que, mesmo se executado por um usuário normal, ele será executado com os privilégios do proprietário (root).

Definir o ID do grupo em um diretório é útil para compartilhar arquivos.

O sticky bit é usado em diretórios /tmppara que todos os usuários possam criar arquivos, mas evita que não proprietários excluam arquivos de outras pessoas. Assim, as permissões /tmpsão normalmente 1777, onde 1 significa que o sticky bit está definido.

Documentação

De man chmod:

Um modo numérico é de um a quatro dígitos octais (0-7), derivados da soma dos bits com os valores 4, 2 e 1. Os dígitos omitidos são considerados zeros à esquerda. O primeiro dígito seleciona o ID do usuário definido (4) e o ID do grupo definido (2) e atributos de exclusão restrita ou fixos (1). O segundo dígito seleciona permissões para o usuário proprietário do arquivo: leitura (4), gravação (2) e execução (1); a terceira seleciona permissões para outros usuários do grupo do arquivo, com os mesmos valores; e a quarta para outros usuários que não fazem parte do grupo do arquivo, com os mesmos valores.

informação relacionada