用 getent 查询用户与组信息

按系统真实解析路径(NSS)查询账号和组,而不是只 grep 本地文件——LDAP/SSSD 条目也能查到。

Linuxgetent 名称查询NSS账户低风险
执行 getent passwd username 查询用户条目,执行 getent group groupname 列出组成员,结果与系统实际解析一致。

01命令

命令
$ getent passwd deploy
getent group docker

02作用说明

getent 会按照 /etc/nsswitch.conf 的配置向 NSS 栈查询,因此 LDAP、SSSD、Winbind 中的账号也能返回——直接 grep /etc/passwd 只能看到本地账号。输出与文件格式相同的冒号分隔结构,脚本可直接复用。不带键调用(如 getent passwd)会枚举整个数据库,这也是在加入域的机器上生成完整用户列表的方法。

03风险

风险低风险
!注意: getent hosts 与 getent ahosts 不同:hosts 走的是过时的旧查询路径,而 ahosts 经 getaddrinfo 且正确支持 IPv6。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

  • getent(1) — Linux manual page
    man7.org · technical · 2026-09-17
    依据: getent man page: 'getent - get entries from Name Service Switch libraries' listing supported databases passwd, group, hosts, services.

最后验证: 2026-09-17 · 分类: 安全与隐私