Linux 中的主要组与次要组

Linux 中的主要组与次要组

主要组和次要组有什么区别?为什么需要一个初级团体?

用户的权限与主组权限相同吗?

假设有一个A具有主要组的用户grp1以及B具有主要组grp2和次要组的用户grp1。那么可以拥有与 ?创建的文件B相同的权限吗?AA

答案1

初级组和次级组有什么区别?初级组需要什么?

Unix 组:

小学组– 指定操作系统分配给用户创建的文件的组。每个用户必须属于一个主要组

次要团体– 指定用户所属的一个或多个组。用户最多可以属于 15 个次要组。

初级组需要什么?用户的权限与主组权限相同吗?

想象一下没有分配给我的主要组用户我在十个次要组中。我创建一个新文件:该文件属于哪个组?这十个是哪一个?
主要组解决了这个问题并定义了文件默认属于哪个组。您不希望在主目录中创建的文件归开发组所有,因此该组中的任何人都可以执行允许他们作为组执行的操作。

假设有一个A具有主要组的用户grp1以及B具有主要组grp2和次要组的用户grp1。那么他是否可以拥有与A所创建的文件相同的权限A

不!仅由组部分定义的权限。当然是可以做到的。使用umask例如。

答案2

每个文件都由一个用户和一个组拥有,不多也不少。因此,当您创建文件时,它将由您的用户拥有,并且当前的团体。当用户登录时,他们当前的组将成为他们的主要组。

用户可以使用以下命令临时将组切换到任何辅助组新加坡或者新组。只要该组被列为该用户的辅助组,用户就可以在没有组密码的情况下执行此操作。切换后,创建的文件将归新组所有,而不是用户自己的

对于权限,主要组和次要组一起使用,无需切换组即可访问某个次要组拥有的文件。

用户还可以将文件的组更改为其任何组(主要或次要):chgrp

从这个意义上说,主要组只不过是“默认”当前组。除非一个用户必须有了一个主要群体,他们就没有理由必须有任何其他群体。通常为每个新用户创建一个新组,这样新用户除了自己的用户权限之外没有默认访问权限。


从你的问题来看:

假设用户 A 具有主组 grp1,用户 B 具有主组 grp2 和辅助组 grp1。那么对于A创建的文件,他们是否可以拥有与A相同的权限呢?

用户 B 将拥有分配给 A 创建的文件的组权限。在这种情况下,A 仅使用 grp1 创建文件。用户A可以从该组中取消任何/所有权限。

答案3

  • 小学组: 用来决定哪些文件是由哪些用户创建的。一个用户必须只属于一个组。

  • 补充组:为用户指定一个或多个组共享文件它们之间。一名用户最多可以属于 15 个次要组。

概括:

  • 主要组:系统需要应用到文件来识别哪个文件是由哪个用户创建的。
  • 补充组:需要在用户之间共享文件。

相关内容