我正在使用getent group
命令来获取groups
其中的用户名linux
。但它没有显示任何usernames
我groups
知道存在的东西。
我需要这个信息还有其他方法吗?
获得第一个两个结果:-
root:x:0:
bin:x:1:bin,daemon
如您所见,组 root 没有用户,bin 组中有 2 个用户。我知道根组包含一个用户根,但它现在在这里显示。
我正在使用getent group
命令来获取groups
其中的用户名linux
。但它没有显示任何usernames
我groups
知道存在的东西。
我需要这个信息还有其他方法吗?
获得第一个两个结果:-
root:x:0:
bin:x:1:bin,daemon
如您所见,组 root 没有用户,bin 组中有 2 个用户。我知道根组包含一个用户根,但它现在在这里显示。
您缺少的是每个用户都有一个主要组,该组存储在/etc/passwd
(通常在字段 4 中),并且可能有一个或多个补充组。只有补充组关联在 中/etc/group
,因此,是唯一getent group
会显示的关联。为了获取特定用户的整个组列表,您可以使用id -a <user>
,但您必须在用户列表上进行迭代以获得完整的信息转储...
你能运行:
getent group|diff /etc/group -
并向我们展示其输出的差异,
因为我已经运行了这个,我看不出它们两者完全一样
getent 只会返回主组名称,而不是用户所属的子组:
getent group adm
adm:x:4:me,logcheck
要在 getent 中获取任何 adm 实例,请尝试:
getent group|grep adm