Determinando as permissões efetivas de arquivo

Determinando as permissões efetivas de arquivo

Gostaria de perguntar quais são as regras que os sistemas operacionais Linux estão usando em ext4sistemas de arquivos quando há conflitos entre permissão de diretório e permissões de arquivo.

Exemplo:

 drwxrwx--- user1 group2 FOLDER
 -rw-r--r-- user1 group1 FILE

Quais permissões um usuário em group2um arquivo FILEteria?...E qual é a regra geral para determinar permissões de arquivo nessas situações?

Obrigado.

Responder1

Se um usuário estiver no grupo2, ele seguirá as permissões de grupo para o diretório FOLDER. ou seja

rwx

Presumindo que eles não sejam o usuário1 e também não estejam no grupo1, examinaríamos as "outras" permissões para FILE. ou seja

r--

Portanto, eles só têm permissões de leitura para este arquivo. Observe que isso é um pouco confuso. Eles não podem modificar diretamente este arquivo, pois não possuem privilégios de gravação. No entanto, como eles têm wxum diretório, eles poderiam rmsubstituir esse arquivo por um novo. (Observe que o inode provavelmente mudaria e eles não seriam capazes de chowntransferi-lo para o proprietário original, portanto não é exatamente o mesmo que modificar diretamente o arquivo.)

Portanto, em geral, as permissões são herdadas do diretório mais pai. À medida que as permissões ficam mais restritivas, elas restringem os arquivos e diretórios filhos. No entanto, como acima, se você tiver wxpermissões para o diretório de nível superior, existem soluções alternativas.


EDITAR

Da mesma forma, se você editar o arquivo com vim, verá uma alteração no inode. Não é "editar", mas "sobrescrever".

$ echo foo > file
$ ls -li file 
5213942 -rw-r--r-- 1 sparhawk sparhawk 4 Aug 16 15:34 file
$ sudo chown root:root file
$ ls -li file 
5213942 -rw-r--r-- 1 root root 4 Aug 16 15:34 file
$ vim file
$ ls -li file 
5214750 -rw-r--r-- 1 lee lee 7 Aug 16 15:35 file

Observe a mudança no inode após vimsubstituir o arquivo. Observe também que o vim avisou que o arquivo era somente leitura. Eu tive que economizar com :w!.

informação relacionada