Answers:
主要组是使用常规方法(TTY,GUI,SSH等)登录时应用于您的组。
由于进程通常继承父组,而您的初始进程或外壳会将主要组作为组,因此您所做的任何事情通常都会对主要组产生影响(例如,创建文件)。
辅助组是可以通过sg或通过newgrp命令登录而无需使用组密码即可启动进程的组。
因此,如果您有一个主要小组x和一个次要小组y,
touch foo
通常会x以组所有者的身份创建一个文件(除非父目录是另一个组的SETGID)。但是,您可以执行以下操作:
sg y 'touch bar'
# or
newgrp y
touch baz
然后bar,baz将以y作为组创建。
但是,如果辅助组中没有组(例如z),则将sg和newgroup命令一起使用时,and 命令将要求提供组密码z。
如果您谈论的是文件系统组,请参见Cyberciti文章。该主组创建一个新文件时默认使用。你可以测试一下
touch foo
ls -la foo
该文件将归您所有,并且属于您的主要组。也在您的主要组中的用户将对那些文件具有组级别的权限。
您可以使用
groups $(whoami)
通过在目录上设置“ 设置组ID”,还可以与不在您的主要组中的人共享文件。此处说明:具有SetGID的共享文件夹。