Algum histórico: o Unix foi originalmente escrito como um sistema multiusuário; O Linux herdou isso e todos os seus derivados, incluindo o Mac OSX. Em um sistema multiusuário, você pode ter vários grupos de usuários que desejam compartilhar arquivos, mas que podem querer manter o conteúdo privado ou limitar o acesso. Portanto, cada arquivo é definido como pertencente a um usuário específico em um grupo específico. Os usuários podem pertencer a vários grupos. O comando groups
(no Linux) listará os grupos dos quais você é membro.
Quando você tenta acessar um arquivo, o sistema primeiro verifica se o usuário corresponde ao usuário proprietário do arquivo; se assim for, as permissões de usuário são usadas.
Se você não for o usuário que possui o arquivo, a próxima verificação é se você é um membro do grupo que é o 'proprietário' do grupo do arquivo; se assim for, as permissões do grupo são usadas.
Finalmente, se ambos os itens acima falharem (você não é o proprietário do arquivo nem pertence ao grupo fornecido), então as permissões mundiais (outras) são usadas.
Geralmente, as permissões para grupo e outras são as mesmas. Por exemplo, você pode ter um arquivo para o qual possa ler e escrever, mas qualquer outra pessoa, quer esteja trabalhando com você ou não, só pode ler. Outro conjunto comum é o usuário ler e escrever, os membros do grupo podem ler, mas outros não têm acesso.
Naturalmente, hoje, a maioria dos sistemas de desktop / laptop tem apenas um único usuário, portanto, há pouca necessidade para o nível de grupo, mas ele ainda é incorporado ao sistema e é usado por alguns serviços do sistema que precisam cooperar.