O proprietário do arquivo deve pertencer ao grupo de arquivos?

21

Eu tenho um entendimento bastante simplista das permissões de arquivo nos sistemas * nix. Entendo que existe um proprietário e um grupo de arquivos, mas existe uma regra rígida e rápida sobre se o proprietário desse arquivo também deve pertencer ao grupo de arquivos? Em outras palavras, um arquivo pode pertencer a um grupo do qual o proprietário não faz parte?

Se sim (ou não), por quê? Gostaria de aumentar minha compreensão ... Parece que não consigo encontrar nada que fale especificamente sobre isso nas interwebs ... Também estou aberto a um bom material de leitura sobre o assunto.

user1766760
fonte

Respostas:

27

Não, não é necessário que o proprietário de um arquivo pertença ao grupo desse arquivo. Não existe um mecanismo para verificar ou aplicar isso. Além disso, um usuário pode pertencer a um grupo ao mesmo tempo e ser removido; nada passará pelo sistema de arquivos para verificar os arquivos que estariam em conflito.

Basicamente, os metadados do proprietário e do grupo de um arquivo estão apenas no disco e não possuem links externos. (Tangente: é armazenado pelo ID numérico do usuário e pelo ID do grupo, e estes são resolvidos pelo sistema quando solicitado.)

Além disso, apenas um conjunto de permissões é usado por vez - se você é o proprietário, apenas as permissões de proprietário são analisadas e as permissões de grupo não importam. Se você não for o proprietário, mas estiver no grupo, serão usadas permissões de grupo. Por fim, se você não estiver no grupo nem o proprietário, as "outras" permissões serão usadas. Se você é tanto o proprietário de um arquivo e no grupo do arquivo, os bits de grupo, não importa.

mattdm
fonte
Obrigado pela sua resposta. Isso confirma meu palpite ... Eu tinha a sensação de que o proprietário supera o grupo, mas me deparei com essa "regra de ouro" no trabalho. Acho que é apenas um daqueles macacos que vêem, fazem coisas de macaco.
user1766760
2
Você está dizendo que, se eu sou o proprietário de um arquivo e estou no grupo que o "possui", e o grupo tem permissão para escrever e executar enquanto eu só tenho permissão de leitura, as permissões do grupo serão ignoradas para mim?
Iconoclast
2
@iconoclast Isso está correto. Crie um arquivo e digite "Hello world" nele. Ele possui propriedade de usuário e grupo. Em seguida, faça um chmod 460e tente editá-lo. Acredito que já li em algum lugar, mas o termo usado é que as permissões de usuário e grupo em um arquivo Unix são dissociadas .
unxnut