在 Ubuntu 服务器运维与日常管理中,查看系统用户信息是最基础、最常用的操作之一。无论是排查异常登录、管理用户权限,还是审计登录记录,掌握正确的用户查询命令都能显著提升工作效率与系统安全性。
本文基于 Ubuntu 26.04 LTS 版本,整理一套完整、可直接使用的用户信息查看方法,内容简洁实用,适合 Linux 新手与运维人员快速上手。此文方法同样适用于Ubuntu22.04和Ubuntu24.04。

在 Ubuntu 服务器运维中,查看用户、用户组等系统信息是高频操作。相比于直接读取 /etc/passwd、/etc/group 等文件,getent 命令更符合系统规范,支持本地账户与域账户(LDAP/SSSD),结果更准确、兼容性更强。
下面只围绕 getent,整理一套实用、可直接复制的使用方法与技巧。
一、getent 基本语法
getent [数据库] [关键词]
常用数据库:
passwd– 用户账户信息group– 用户组信息shadow– 密码信息(需 root)hosts– 主机与 IP 信息services– 系统服务端口
二、getent 查看用户信息(最常用)
1. 查看系统所有用户
getent passwd
输出完整用户信息,遵循系统 NSS 配置,比直接 cat /etc/passwd 更可靠。
2. 仅提取所有用户名
getent passwd | cut -d: -f1
3. 查看单个用户是否存在
getent passwd 用户名
有输出 = 用户存在;无输出 = 用户不存在。
4. 筛选普通真实用户(UID ≥1000)
getent passwd | awk -F: '$3 >= 1000 && $3 < 65534 {print $1}'
自动过滤系统账号与 nobody 账户,只显示人工创建的用户。
5. 筛选可正常登录的用户
getent passwd | awk -F: '$3 >= 1000 && $3 < 65534 && $7 !~ /(nologin|false)$/ {print $1}'
排除被禁用登录的账号,用于安全审计非常实用。
三、getent 查看用户组与权限
1. 查看所有用户组
getent group
2. 查看指定组信息
getent group 组名
3. 列出所有拥有 sudo 权限的用户
会把所有有sudo权限的用户都列出来
getent group sudo
四、getent 其他常用技巧
1. 查看主机名与 IP 解析
getent hosts localhost
getent hosts www.baidu.com
2. 查看系统服务端口
getent services ssh
getent services http
五、为什么优先使用 getent?
- 遵循系统 NSS 配置,支持 LDAP/SSSD 等域环境
- 统一查询入口,不用记多个配置文件路径
- 结果更干净、便于管道过滤与脚本处理
- 符合 Ubuntu 官方推荐习惯