Na verdade, existem quatro conjuntos de atributos com os quais você pode trabalhar via chmod .
Special , User/Owner , Group e Others nessa ordem, ao trabalhar com os chmods de quatro números, sendo que esse primeiro número é um bit especial que pode ser definido.
chmod 4555 é igual ao seguinte:
-
Set UIDbit - executa o arquivo como o proprietário, independentemente de qual usuário o está executando - Usuário / Proprietário:
Read, Execute - Grupo:
Read, Execute - Outros:
Read, Execute
A s em sua string 'human readable' para permissões indica que o SetUID bit (explicado abaixo) está definido.
Efetivamente, podemos dividir o argumento de quatro dígitos chmod em descritores específicos da seguinte forma, e fazer as contas para determinar o que seria um 4 na primeira seção, um 5 na próxima seção e assim por diante.
Lembre-se de que #### é Special User/Owner Group e Others nessa ordem.
Para atributos Special (o primeiro número em um argumento de quatro números chmod ):
-
Set UID- Executa o arquivo como proprietário, independentemente do usuário que o está executando (mostra comosna cadeia de permissões legível paraUsersection) = +4 (--sunderUser/Owner) -
Set GID- Executa o arquivo como grupo, independentemente do usuário / grupo que o executa (mostra comosna cadeia de permissões legível paraGroupsection) = +2 (--sunderGroup) -
Sticky Bit- EFETIVO NOS DIRETÓRIOS SOMENTE - Se definido, somente o usuário proprietário do diretório erootpoderão excluir o diretório e somente o proprietário do arquivo ourootpoderá excluir arquivos dentro dele. (mostra comotna cadeia de permissões legível por humanos para a seçãoOthers) = +1 (--tunderOthers)
Para os atributos User/Owner , Group e Others (os últimos três números em um argumento de quatro números chmod ):
-
Read= +4 (r--) -
Write= +2 (-w-) -
Execute(para arquivos) ou 'Inserir em / listar itens' = +1 (--x)