上一篇                     
               
			  如何快速查看Linux用户?
- Linux
- 2025-06-06
- 2199
 查看Linux系统用户的常用方法:使用
 
 
cat /etc/passwd命令查看所有用户列表;
 getent passwd命令获取用户数据库信息;
 id命令查看当前用户信息;
 groups命令查询用户所属组。
查看Linux系统用户的方法详解
在Linux系统中,有效管理用户账户是系统管理员的核心任务之一,本文将全面介绍7种查看用户信息的方法,帮助您掌握用户管理的关键技能。
核心命令行工具
查看所有用户列表
/etc/passwd 文件是存储用户信息的核心配置文件:
cat /etc/passwd
每行输出包含7个字段(以冒号分隔):
用户名:密码占位符(x):用户ID(UID):组ID(GID):用户描述:主目录:默认Shellgetent 命令(推荐)
 
更强大的用户信息查询工具:
getent passwd
优势:
- 同时查询本地用户和网络用户(如LDAP)
- 支持其他数据库(group, hosts等)
- 兼容性更好
专用用户查询命令
compgen命令(Bash内置):
compgen -u
lslogins命令(现代系统):
sudo lslogins # 需要root权限
输出包含:

UID USER      PWD-LOCK PWD-DENY  LAST-LOGIN GECOS
0   root            0       0    Jun30/2025 root
1000 user1           0       0    Jul15/2025 Regular User用户信息深度解析
查看特定用户信息
id命令:
id username # 查看用户UID、GID及所属组
示例输出:
uid=1000(user1) gid=1000(user1) groups=1000(user1),4(adm),24(cdrom)finger命令(需安装):
sudo apt install finger # Debian/Ubuntu finger username
查看登录用户
who命令:
who # 显示当前登录用户
输出示例:
user1   pts/0        2025-07-20 09:15 (192.168.1.5)w命令(更详细):

w
输出包含:
- 登录用户
- 登录时间
- 空闲时间
- 当前进程
查看用户登录历史
last命令:
last # 显示所有登录记录 last username # 查看特定用户登录历史
用户配置文件详解
/etc/passwd文件结构解析:
| 字段位置 | 名称 | 说明 | 示例 | 
|---|---|---|---|
| 1 | 用户名 | 用户登录名 | ubuntu | 
| 2 | 密码 | x表示密码在/etc/shadow | x | 
| 3 | UID | 用户ID | 1000 | 
| 4 | GID | 主组ID | 1000 | 
| 5 | GECOS | 用户描述信息 | Ubuntu User,,, | 
| 6 | 主目录 | 用户家目录路径 | /home/ubuntu | 
| 7 | Shell | 默认命令行解释器 | /bin/bash | 
重要说明:
- UID 0:root用户(超级管理员)
- UID 1-999:系统服务用户
- UID 1000+:普通用户
图形化界面方法
对于桌面版Linux用户:
- 打开系统设置
- 进入用户账户或用户和组
- 查看用户列表和详细信息
- 需要管理员权限进行修改
实用技巧与注意事项
用户筛选技巧
# 查看普通用户(UID≥1000)
getent passwd | awk -F: '$3 >= 1000 && $3 < 60000 {print $1}'
# 查看系统用户(UID<1000)
getent passwd | awk -F: '$3 < 1000 {print $1}' 
安全注意事项
-  权限要求:  - 查看/etc/passwd需读取权限
- 某些命令(如lslogins)需要root权限
 
- 查看
-  敏感信息: - 实际密码存储在/etc/shadow(仅root可访问)
- 不要直接修改/etc/passwd文件(使用usermod等工具)
 
- 实际密码存储在
-  特殊用户识别: - /sbin/nologin:禁止登录的系统账户
- /bin/false:完全禁止Shell访问
 
应用场景指南
| 需求场景 | 推荐命令 | 优势 | 
|---|---|---|
| 快速查看所有用户 | getent passwd | 完整、准确、兼容性好 | 
| 检查当前登录用户 | w或who | 实时状态、来源IP | 
| 查看用户组成员 | id username | 组关系清晰 | 
| 审计登录历史 | last | 时间/IP记录完整 | 
| 脚本中获取用户 | compgen -u | 无额外输出 | 
掌握Linux用户查看技巧是系统管理的基础,对于日常管理:
- 首选 getent passwd:获取完整用户列表
- 使用 id命令:查看特定用户详情
- 结合 last和w:监控用户活动
最佳实践建议:在脚本中使用
getent替代直接读取/etc/passwd,因其兼容性更好且支持网络用户源。
引用说明:
- Linux Programmer’s Manual: passwd(5)
- GNU Coreutils 文档:id 命令
- Linux 基础管理指南:Linux Foundation 系统管理文档
- POSIX 标准: getent 规范
 
  
			 
			 
			 
			 
			 
			 
			 
			