Linux 中可以有一个没有主组的用户吗?我在一次 Linux 测试中发现了这个问题,希望了解一下。
答案1
有两种类型的组:
主要群体:
这是您登录时应用到您的组;在大多数情况下,它与您的登录名同名。在创建新文件(或目录)、修改文件或执行命令时,默认使用主组。
次要群组(又称补充群组):
这些是除您的主要组之外您所属的组。例如,这意味着如果目录或文件属于 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。