Permissões em sistemas semelhantes a Unix usam uma representação octal.
Começa com uma permissão especial opcional, seguida de u
ser, g
roup, o
thers. As permissões u
, g
e o
são uma combinação das seguintes ORed:
-
r
ead: 4 -
w
rite: 2 - e
x
ecute: 1
Portanto, a permissão 0774 permitiria ao seu proprietário e grupo acesso total, mas acesso somente leitura a outras pessoas.
Essas permissões, incluindo a permissão especial, são independentes umas das outras.
Os arquivos também têm um único proprietário e grupo, que também são independentes, em seus atributos.
Portanto, é possível que o proprietário tenha acesso somente leitura enquanto os membros do groupX têm acesso de leitura / gravação e as pessoas que não correspondem aos critérios de proprietário ou grupo têm acesso total.
Vamos considerar o usuário john
que altera as permissões de text.txt
para 0467
, a propriedade para john
e o grupo para operator
:
$ chown john:operator text.txt
$ chmod 0467 text.txt
$ ls -l text.txt
-r--rw-rwx 1 john operator 0 Dec 29 00:57 text.txt
Se john
não fizer parte do grupo operator
, ele não poderá atualizar o conteúdo do arquivo:
$ echo hi > text.txt
text.txt: Permission denied
Mas ele ainda pode alterar as permissões no arquivo e atualizar o arquivo:
$ chmod u+w text.txt
$ echo hi > text.txt
$ ls -l text.txt
-rw-rw-rwx 1 john operator 3 Dec 29 00:57 text.txt
Observe que o acesso a um arquivo também envolve permissões de pasta em toda a árvore de diretórios.