Gostaria de perguntar quais são as regras que os sistemas operacionais Linux estão usando em ext4
sistemas 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 group2
um arquivo FILE
teria?...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 wx
um diretório, eles poderiam rm
substituir esse arquivo por um novo. (Observe que o inode provavelmente mudaria e eles não seriam capazes de chown
transferi-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 wx
permissõ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 vim
substituir o arquivo. Observe também que o vim avisou que o arquivo era somente leitura. Eu tive que economizar com :w!
.