如何查看Linux服务器用户列表,Linux用户查询命令?

在Linux服务器上查看有哪些用户,最直接的方法是读取 /etc/passwd 文件,或者使用 getent passwd 命令,配合 last 和 who 可以掌握用户的登录情况。

很多新手刚拿到服务器权限,第一反应就是翻目录、装环境,却忽略了“这台机器上到底住着谁”这个基本问题,搞清楚用户列表,不仅是安全审计的第一步,也是排查异常登录、管理权限的基础,下面我把常用的查看方法、命令细节和判断技巧拆开揉碎讲清楚。

4 Linux用户管理之查看用户信息
加载中
4 Linux用户管理之查看用户信息

查看linux服务器用户列表,最直接的方法是什么

linux查看服务器有哪些用户?从/etc/passwd开始

/etc/passwd 是Linux系统存储用户账户信息的核心文件,每一行代表一个用户,字段之间用冒号分隔,你可以直接使用 cat 命令查看:

cat /etc/passwd

大致长这样:

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
yourname:x:1000:1000:Your Name,,,:/home/yourname:/bin/bash

每一行有7个字段,含义分别是:

  • 用户名
  • 密码占位符(实际密码存在 /etc/shadow 里)
  • UID(用户ID)
  • GID(主组ID)
  • 描述信息(GECOS)
  • 主目录
  • 登录Shell

如果觉得输出太乱,可以只提取用户名和UID,用 awk 处理:

awk -F: '{print $1, $3}' /etc/passwd

这样就能得到一份简洁的“用户名+UID”清单。UID是区分用户身份的关键数字,后面判断系统用户就会用到它。

为什么推荐用getent而不用cat

cat /etc/passwd 只能读取本地文件,如果服务器接入了LDAP、NIS等远程认证方式,有些用户不会出现在这个文件里。getent passwd 会从系统配置的数据库源(包括本地、NIS、LDAP)统一查询,结果更完整。

getent passwd

两者输出的格式完全一致,日常排查时,我习惯直接用 getent passwd,覆盖更全面,也不会漏掉远程域用户。行业共识认为,getent 是比 cat

如何查看Linux服务器用户列表,Linux用户查询命令?

更符合运维实践的做法。

一行命令列出所有“可登录”用户

/etc/passwd 里大部分用户(daemon、bin、sys)都是系统服务用的,根本不能登录,想只看能登录的实体用户,可以基于Shell字段过滤:

grep -E "bash|sh$" /etc/passwd

这个命令会把拥有 /bin/bash、/bin/sh 等登录Shell的用户列出来,但也可能漏掉用 zsh 或 fish 的用户,更稳妥的做法是用 getent 加 awk:

getent passwd | awk -F: '$7 != "/usr/sbin/nologin" && $7 != "/bin/false" {print $1}'

这样能排除常见的“禁止登录”Shell,保留真正能进入系统的账户。

怎么在linux服务器上查看所有用户?用UID和shell区分身份

区分系统用户和普通用户,核心看UID

Linux系统安装时会自动创建一大批内部用户,root、daemon、nobody,这些用户不是真人,而是给服务进程分配权限用的。判断标准很简单:看UID大小。

  • UID为 0 的是超级用户 root
  • UID在 1-999(多数发行版)通常是系统用户
  • UID在 1000 及以上(部分发行版从500开始)才是普通用户

你可以用一条命令把普通用户筛出来:

awk -F: '$3 >= 1000 {print $1, $3}' /etc/passwd

输出结果就是这台服务器上所有“真实用户”的清单,注意不同发行版的阈值可能不同,CentOS 7 以下从500开始,Ubuntu和CentOS 8+从1000开始,具体看发行版文档。

查看某个具体用户的完整信息

如果要确认一个用户是否存在,或者想查看他的UID、主组、主目录和登录Shell,用 id 命令最快:

id username

输出示例:

uid=1001(test) gid=1001(test) groups=1001(test),27(sudo)

如果提示 no such user,说明这个用户不存在。id 命令是检查用户是否存在的标准方法,比翻文件更直观。

系统用户不一定是“无关紧要”的角色

如何查看Linux服务器用户列表,Linux用户查询命令?

虽然系统用户不能拿来登录,但它们各自对应着服务权限。www-data 运行着Nginx或Apache,mysql 运行着数据库,如果你在 /etc/passwd 里看到不认识的新增系统用户,比如突然冒出一个 postgres,但服务器根本没装PostgreSQL,那就得警觉了,建议结合下面几步继续排查。

查看linux服务器用户的登录痕迹:who、w和last

当前谁在线?用who和w

想立刻知道现在有哪些用户登录了服务器,用 who:

who

输出示例:

root     pts/0        2026-03-20 14:22 (203.0.113.5)
zhangsan pts/1        2026-03-20 15:01 (192.168.1.10)

w 命令提供更多信息,包括登录时间、空闲时间、当前运行命令等:

w

这两条命令适合“实时查看”,如果你只是需要确认自己有没有被挤掉线,用 who 就够了。

最近谁登录过?用last和lastlog

last 命令从 /var/log/wtmp 读取登录记录:

last

它能显示最近一段时间内所有用户的登录历史,包括来源IP、登录时间、退出时间,如果发现某个IP反复尝试登录,或者某个用户在你根本不该在线的时间登录过,那就得查一下安全策略了。

lastlog 则展示每个用户最近一次登录时间:

lastlog

输出中如果某个用户显示 Never logged in,说明他创建后从未登录过,很可能是系统自动生成的账户,或者有人创建后还没启用。

登录失败记录也不能放过

排查安全问题时,lastb 命令可以查看失败登录记录(需要root权限):

lastb

它读取 /var/log/btmp,所有暴力破解尝试都会留在这里。业内专家指出,看用户列表不只是看“有哪些人”,更要看“哪些人在尝试进来”。

实战:5分钟摸清一台Linux服务器上的所有用户

把上面这些命令串起来,形成一个简单排查流程:

  1. 用 getent passwd 获取完整用户列表
  2. 如何查看Linux服务器用户列表,Linux用户查询命令?

  3. 用 awk -F: '$3 >= 1000' 筛选出UID大于等于1000的普通用户
  4. 用 lastlog 检查每个普通用户的最近登录记录
  5. 用 who 查看当前活动会话
  6. 用 lastb 检查有没有可疑的失败登录

如果发现某个普通用户长期不登录,却拥有sudo权限,建议及时处理,查看用户权限可以用:

sudo -l -U username

这条命令能列出指定用户的sudo权限,是判断账户重要程度的关键依据。

我该多久检查一次用户列表

这个没有固定频率,但有几个场景必须查:

  • 服务器刚交付或接手时,先摸清默认账户
  • 安装过不明脚本后,检查是否被偷偷添加了用户
  • 收到安全告警或发现异常进程时,立即查看用户和登录记录

日常巡检建议每月一次,用 lastlog 扫一眼就够了,如果管理的是核心业务服务器,可以写个简单脚本,把UID大于1000的用户列表发到监控群,自动对比变化。

Linux查看用户常见问题解答

linux查看服务器有哪些用户用哪条命令?

最基础的是 cat /etc/passwd,更推荐 getent passwd,想筛选出真实用户,用 awk -F: '$3 >= 1000 {print $1}' /etc/passwd。

为什么/etc/passwd里有那么多用户?

因为操作系统会为每个服务创建独立的系统账户,www-data、mysql、daemon 等,它们的UID通常小于1000,不能登录,是服务运行时用来隔离权限的。

普通用户和系统用户有什么区别?

普通用户是管理员手动创建的,有独立主目录和登录Shell,可以正常登录,系统用户是软件安装时自动生成的,一般没有登录Shell,主目录也常为 /nonexistent,判断标准就是UID大小,以及Shell是否为 /usr/sbin/nologin。

搞清楚Linux服务器上有哪些用户,是运维和安全管理的地基,从 /etc/passwd 到 getent,从UID到登录痕迹,方法并不复杂,关键是要养成定期看的习惯,你每次连上服务器,花两分钟扫一眼用户列表和登录记录,很多潜在问题都能早早发现。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/699072.html

赞 (0)
收信服务器都有哪些域名?怎么设置邮箱服务器?
上一篇 2026年10月1日 23:08
富士通服务器做RAID几怎么查?,富士通RAID配置怎么看?
下一篇 2026年10月1日 23:10

相关推荐

  • 服务器经常卡顿?可能是带宽问题,服务器带宽不足会导致卡顿吗?

    服务器出现频繁卡顿,核心症结往往指向带宽资源瓶颈,当业务流量激增遭遇带宽限制,网络拥堵便成为常态,直接导致访问延迟、数据丢包甚至服务中断,解决这一问题不能仅靠盲目扩容,必须通过精准的监控分析与架构优化,实现带宽资源的高效利用,带宽瓶颈是导致服务器响应迟缓的“隐形杀手”在排查服务器故障时,CPU和内存利用率往往最……

    2026年3月7日
    14000
  • Debian Linux如何添加用户到sudo组?linux添加用户到sudo命令

    在Debian Linux中,只需使用 sudo usermod -aG sudo 用户名 命令即可将本地用户添加到sudo组,从而赋予其管理员权限,这个操作看似简单,但在实际的企业级运维或家庭服务器搭建场景中,权限管理的严谨性往往被忽视,很多新手用户直接修改 /etc/sudoers 文件,这不仅容易因语法错……

    2026年6月23日
    5400
  • 西安大带宽服务器包年怎么议价?有哪些省钱技巧?

    西安大带宽服务器包年议价的核心在于摸清运营商成本结构和利用竞品信息不对称,直接锁定年度费用降低空间,西安大带宽服务器包年价格构成:议价的基础了解价格从哪来,是谈判的第一步,西安作为西北网络枢纽,机房运营成本相对一线城市更低,但带宽价格受运营商政策波动影响,多数情况下,包年费用由机房租金、带宽费、IP费用和运维服……

    服务器宽带 2026年8月9日
    500
  • 域名和地址绑定如何正确操作,注意事项有哪些?

    先去域名服务商处添加一条A记录,把域名指向服务器IP,再到服务器上的Web环境中绑定该域名,两步完成,顺序不能乱,下面拆开讲清楚每一步的细节和常见的坑,先搞清楚域名绑定和解析的区别很多朋友直接把“解析”和“绑定”混为一谈,实际这是两件不同的事,域名解析发生在DNS层面,负责把域名翻译成IP地址,你在阿里云、腾讯……

    2026年9月7日
    300
  • 电梯集成服务器有哪些种类?,电梯服务器哪个牌子质量好?

    电梯集成服务器有哪些?先给你吃颗定心丸电梯集成服务器主要分三类:群控集成服务器、物联网(IoT)集成服务器、以及梯控与安防联动集成服务器,多数项目里,它们的功能会融合在一台设备里,但采购和选型时必须分清主次, 下面我从实际应用场景出发,把这几种服务器的“脾气秉性”给你捋清楚,顺便聊聊电梯集成服务器怎么选、大概什……

    2026年10月8日
    300
  • 云服务器有哪些知名大品牌,云服务器哪家便宜又稳定?

    云服务器有哪些大品牌?核心答案很直接:国内看阿里云、腾讯云、华为云、百度智能云、京东云、火山引擎、天翼云,国际看AWS、微软Azure、谷歌云, 这些品牌在计算、存储、网络产品成熟度上各有侧重,选型时优先匹配业务场景和预算,云服务器有哪些大品牌?国内主流阵营拆解国内云服务器市场经过多年竞争,形成了较为清晰的梯队……

    2026年10月6日
    100
  • 动态服务器有哪些意想不到的应用,怎么选择?

    动态服务器的核心价值在于承载一切需要实时计算、交互和数据读写的业务场景,凡是网页内容不能直接写在静态文件里的,基本都离不开它,从电商交易、会员登录到企业管理系统和API接口,动态服务器负责把用户请求交给程序处理,再把结果实时拼装成页面返回给用户,这篇文章从实际应用出发拆解动态服务器的主要用途、选型逻辑和费用参考……

    2026年10月18日
    100
  • 安防设备服务器有哪些类型,什么牌子性价比高?

    安防设备服务器不是一台机器,而是一类专门服务于安防系统的服务器组合,常见的有视频监控服务器、流媒体服务器、存储服务器、AI分析服务器和报警服务器, 很多朋友一上来就搜“安防设备服务器有哪些”,其实是想搞明白自己工地、园区或门店该上什么设备,别急,下面按功能、选型、价格和部署顺序,一次说透,安防设备服务器有哪些型……

    2026年10月6日
    000
  • 倍控存储服务器有哪些款式可选,哪款性价比最高?

    倍控存储服务器的主流选择集中在N100、J4125等低功耗平台的NAS整机与准系统,具体型号包括倍控G30系列、N100四盘位NAS以及各类M.2+ SATA混合盘位的静音机型,它并非传统意义上的企业级存储品牌,而是面向家庭NAS、小型工作室、软路由兼存储场景的高性价比方案提供商,如果你的核心诉求是低功耗、体积……

    2026年10月11日
    200
  • PHP和ASP动态语言区别是什么?ASP动态语言有哪些优缺点

    PHP与ASP的核心区别在于底层架构、开源生态及跨平台能力,PHP凭借开源免费和Linux环境的高兼容性占据Web开发主流,而ASP(特指经典ASP或ASP.NET)则依赖Windows生态,更适合企业内部系统或微软技术栈团队,底层语言机制与运行环境差异PHP的脚本解释特性PHP是一种嵌入式HTML的脚本语言……

    2026年6月17日
    3900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注