Qual é a diferença entre grupo primário e grupo secundário no Ubuntu?
Qual é a diferença entre grupo primário e grupo secundário no Ubuntu?
Respostas:
O grupo principal é o grupo aplicado a você quando você efetua login usando os métodos usuais (TTYs, GUI, SSH, etc.).
Como os processos geralmente herdam o grupo do pai, e seu processo ou shell inicial teria o grupo principal como grupo, qualquer coisa que você faça geralmente tem o efeito do grupo principal (criando arquivos, por exemplo).
Os grupos secundários são os grupos nos quais você pode iniciar processos sem usar uma senha de grupo, via sg
ou para efetuar login através do newgrp
comando.
Portanto, se você tem um grupo primário x
e um grupo secundário y
,
touch foo
normalmente criará um arquivo x
como o proprietário do grupo (a menos que o diretório pai seja SETGID para outro grupo). No entanto, você pode fazer:
sg y 'touch bar'
# or
newgrp y
touch baz
Então bar
e baz
será criado y
como o grupo.
No entanto, se você não tiver um grupo em seus grupos secundários (digamos z
), os comandos sg
e newgroup
solicitarão a senha do grupo se você os usar z
.
Se você está falando sobre grupos de sistemas de arquivos, eles são bem explicados aqui no artigo cyberciti . O grupo principal é usado por padrão ao criar um novo arquivo. Você pode testar isso
touch foo
ls -la foo
O arquivo pertencerá a você e estará no seu grupo principal. Os usuários que também estão no seu grupo principal terão permissões no nível do grupo nesses arquivos.
Você pode verificar seus grupos secundários com
groups $(whoami)
Também é possível compartilhar arquivos com pessoas que não estão no seu grupo principal, definindo Definir ID do Grupo em um diretório. Isso é explicado aqui: pasta compartilhada com o SetGID .