Para adicionar as outras respostas:
As permissões tradicionais do Unix são divididas em:
- leia (
r
) - write (
w
) - execute o diretório file / access (
x
)
Cada um desses é armazenado como um bit, onde 1 significa permitido e 0 significa não permitido.
Por exemplo, o acesso somente leitura, geralmente escrito r--
, é armazenado como binário 100
ou octal 4
.
Existem três conjuntos dessas permissões, o que determina o acesso permitido para:
- o proprietário do arquivo
- o grupo do arquivo
- todos os outros usuários
Eles são todos armazenados juntos na mesma variável, por ex. rw-r-----
, significando leitura / gravação para o proprietário, somente leitura para o grupo e nenhum acesso para outros, é armazenado como 110100000
binário, 640
octal.
Então, isso faz 9 bits.
Então, há outros 3 bits especiais:
- setuid
- setgid
- pegajoso
Veja man 1 chmod
para detalhes sobre eles.
E, finalmente, o tipo do arquivo é armazenado usando 4 bits, por exemplo seja um arquivo regular, um diretório, um pipe, um dispositivo ou qualquer outra coisa.
Estes são todos armazenados juntos no inode e juntos formam 16 bits.