我们可以拥有没有主要组的用户吗?

我们可以拥有没有主要组的用户吗?

Linux 中可以有一个没有主组的用户吗?我在一次 Linux 测试中发现了这个问题,希望了解一下。

答案1

有两种类型的组:

  1. 主要群体:

    这是您登录时应用到您的组;在大多数情况下,它与您的登录名同名。在创建新文件(或目录)、修改文件或执行命令时,默认使用主组。

  2. 次要群组(又称补充群组):

    这些是除您的主要组之外您所属的组。例如,这意味着如果目录或文件属于 www-data 组(在本例中由 Web 服务器进程使用),则所有 www-data 组成员都可以直接读取或修改这些文件(假设权限也允许这样做)。

foobar当我们使用此命令创建用户时,

sudo adduser foobar

默认情况下,用户foobar将被分配主要组foobar(与用户名相同)。

我们还可以将用户的主要组更改为,

sudo usermod -g www-data foobar

小写-g选项指的是主要组。

现在foobar具有www-data主要组上下文。我们可以更改用户的主要组,但不能将其删除。

答案2

是也不是。虽然 中的条目中不可能有空白组/etc/passwd,但讽刺的是有一个组叫做nogroup

nogroup是与用户关联的相应组nobody。如果您的用户不需要“真正的”权威组,则可以使用它。警告:显然有些系统会像nobody:nogroup以前一样运行某些进程该用户的这种情况。如果那是你,请谨慎将小组交给谁nogroup

查看 Debian有关群组的文档

nogroup (user: nobody): Daemons that need not own any files run as user nobody and group nogroup. Thus, no files on a system should be owned by this user or group.

注意任何文件都不应归nobody:nogroup

答案3

不,这是不可能的。/etc/passwd如果组字段为空,则输入无效。每个用户帐户都必须有一个用户 ID 和一个主要组 ID。

相关内容