Tentando aprender sobre permissões

Iniciado por jbmascar, 22 de Agosto de 2022, 16:48

tópico anterior - próximo tópico

jbmascar

Boas pessoal?

Conforme abaixo, o que significa o "0" no número 0760?
create mask = 0760
directory mask = 0760

Grato

zekkerj

#1
Olá @jbmascar, seja bem-vindo ao fórum.

Citação de: jbmascar online 22 de Agosto de 2022, 16:48
Boas pessoal?

Conforme abaixo, o que significa o "0" no número 0760?
create mask = 0760
directory mask = 0760

Grato
O primeiro zero significa que a sequência numérica está escrita em base octal.

O sistema octal se ajusta muito bem à definição de permissões, pois cada dígito octal representa 3 bits, e as permissões básicas POSIX são três (leitura, escrita e execução). Assim cada dígito octal representa um grupo completo de permissões que podem estar sendo concedidas ou retiradas, conforme o contexto em que esteja sendo usado.

OctalBinárioPermissões
00 0 0- - -
10 0 1- - x
20 1 0- w -
30 1 1- w x
41 0 0r - -
51 0 1r - x
61 1 0r w -
71 1 1r w x

Você também pode pensar em leitura (r) como o valor 4, escrita (w) como o valor 2, e execução (x) como o valor 1. Assim, se você quer citar leitura e escrita, faz r+w, ou seja, 4+2, o que dá "6". E por aí vai.

O segundo zero, no caso, indica que todas as permissões (leitura, escrita e execução) estão sendo retiradas de outros usuários [os grupos básicos de permissão são "usuário", "grupo" e "outros"]. Neste contexto, as permissões só podem ser retiradas, e não adicionadas, pois o "create mask" e o "directory mask" são máscaras AND. Numa máscara AND, os bits zero fazem com que as permissões resultantes sejam apagadas, ou seja, retiradas. Os bits 1 mantém a permissão original do usuário, conforme definido pelo sistema.

Há um outro contexto, das diretivas "force create mask" e "force directory mask", onde as permissões são concedidas, que são máscaras OR. Numa máscara OR, os bits um fazem com que as permissões resultantes sejam acesas, ou seja, adicionadas. Os bits 0 mantém a permissão original do usuário, conforme definido pelo sistema.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

creto

Desculpe-me o [Off] - Mas mesmo já a alguns anos sem usar o ubuntu, não posso deixar de visitar essa escola

(A culpa não é do desuso do sistema ubuntu desktop, mas acharem que telegram é um suporte válido)

T+
A vida, é feito andar de bicicleta, se parar, você cai! (Gabriel Contino)
Blog do Paulo Corrêa Creto