该用户ldl
存在于根组中,但是当我使用groups root
检查它时,不显示该ldl
用户。
[root@localhost Qiyun02]# usermod -g root ldl
[root@localhost Qiyun02]# groups root
root : root
你看,使用groups root
列出用户,不显示ldl
.
编辑
我也尝试过:
usermod -a -G root ldl
将用户附加ldl
到root
组,但仍然使用groups root
不显示ldl
用户。
答案1
该groups
命令不用于显示组的成员。相反,它用于显示用户所属的组。
因此groups root
将显示 root 用户所属的所有组。
如果您已members
安装,则可以使用members root
来显示该组中的所有用户root
。
否则,您只能用来getent group root
查看组中的所有用户root
。
编辑以显示getent
示例,因为正如 @cas 指出的那样,本地组文件不是组信息的唯一来源,尤其是在可能属于 AD 域或 NIS+ 域的联网计算机上,或者可能只是使用备用身份验证数据库,如 ldap 或 mysql,或其他工具extrausers
(再次感谢@cas)。
答案2
正如蒂姆·肯尼迪提醒的那样,它groups
不会显示团体的所有成员。
您还可以使用id
来检查用户的组,我使用root
以下示例:
$ id root
uid=0(root) gid=0(root) group=0(root)