用户可以属于Linux中的隐藏组吗?


1

用户是否可以属于Linux中的组,但组名称未在组文件中列出 /etc 目录。如果是这样,有什么例子?

Answers:


5
  1. 对于组定义,可能存在替代位置,如中所述 nsswitch.conf

    • NIS

    • LDAP

    • Berkeley DB文件,而不是平面文件

    • ......以及可能会或可能不会作为系统中的其他NSS模块提供的任何数量的替代方法。

  2. 文件系统对象可能属于尚未定义的UID或GID /etc/passwd/etc/groups 或通过任何替代名称服务。就内核而言,这是完全可以接受的,因为它是用户空间,无论如何都提供了人类可读名称的映射。在这种情况下,用户空间工具通常会显示数字ID而不是名称。

    另一方面,虽然完全有可能,但是具有无效UID或GID的对象通常表示存在某些重要性的问题 - 通常情况下,如果用户没有正确处理其文件而被删除。在大多数情况下,这种情况是不可接受的,因为如果有问题的UID / GID被重新用于现在发现自己拥有来自过去用户的多个文件的新用户/组,则它允许信息泄露的可能性。 ..

如果您提到实际问题,我们可能会提供更多帮助......


2

可能有一个GID未在组中列出的文件,如果从另一台机器导入文件(例如tar-ball),这种情况经常发生。然后该小组显示 ls 例如一个数字,例如4000.例如

-rw-r--r-- 1 root 4000 0 Dec 24 11:04 foo.foo

(我是这样做的 touch foo.foo; chgrp 4000 foo.foo

组名文件在名称方面简单方便,当然也可以定义哪些用户属于哪个组。

同样,你可以 /etc/passwd 设置用户 fred 将组4000作为数字。

我不确定你是否可以拥有一个空的组名 /etc/groups

[正如larsmans指出的那样,NIS也可能会影响用户和群组的名称]

我希望这回答了你的问题。


1

可以在中定义组成员身份 NIS 代替 /etc/group。咨询你的 /etc/nsswitch.conf

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.