查看服务器有多少人,最直接的方法是先用 w 或 who 看在线用户,再用 ss 或 netstat 看网络连接数。 这两种方式分别对应“系统登录人数”和“网络并发连接数”,具体看你的场景是内部办公还是对外服务。
先分清“多少人”是哪一种人数
很多朋友一上来就敲命令,却搞不清自己要查的是什么,服务器里的“人数”至少有两层含义:
在线用户数
指当前通过 SSH、终端或控制台成功登录到服务器系统的会话数量,比如你和小明各自通过 SSH 登录了服务器,who 会显示两条记录,这就代表有 2 人在线。
网络并发连接数
指服务器上所有 TCP 连接的数量,包括 HTTP 请求、数据库连接、SSH 会话等,一个用户可能同时建立多个连接,所以连接数通常远大于真实人数,如果你运营网站,这个数更值得关注。
先想清楚你要查的是哪种,再选下面的命令。
查看在线用户:三条命令搞定
who 命令:只看登录会话
执行 who,会输出用户名、终端、登录时间和 IP 地址,示例:
root pts/0 2026-02-10 09:12 (192.168.1.100)
dev pts/1 2026-02-10 09:30 (10.0.0.8)
每行代表一个会话,直接数行数即可,如果想看更精简的,用 who | wc -l 输出数字。
w 命令:附带负载信息
w 不仅显示在线用户,还会告诉你系统平均负载、每个用户在做什么,输出末尾的 load average 是 1 分钟、5 分钟、15 分钟的平均负载,这个数接近 CPU 核心数时意味着系统繁忙。
uptime 命令:快速看负载
如果你只关心系统是否被“挤爆”,uptime 就够了,它给出当前时间、已运行时长和负载均值,负载连续偏高,说明在线人数带来的进程已经超过硬件承受能力。
查看网络连接数:定位谁在连接你的服务器
对于网站服务器,在线人数通常通过并发连接数来评估。
ss 命令:现代 Linux 首选
推荐用 ss,它比 netstat 更快更详细,查看所有连接:
ss -tunap
-t 显示 TCP,-u 显示 UDP,-n 不做域名解析,-a 显示所有连接,-p 显示进程,要统计当前 ESTABLISHED 状态的连接数:
ss -t state established | wc -l
这个数字代表当前正在通信的连接数,比单纯看用户数更能反映真实压力。
netstat 命令:传统但依然可用
很多老系统还保留 netstat,用法类似:
netstat -tunap
统计连接数:
netstat -tun | grep ESTABLISHED | wc -l
注意 netstat 在部分最小化安装系统里没有,需要先安装 net-tools。
按状态统计连接数
服务器连接有 LISTEN、ESTABLISHED、TIME_WAIT 等状态,TIME_WAIT 过多通常说明短连接频繁,可以优化 keepalive;SYN_RECV 过多则可能是被攻击,用 ss -s 能直接看所有状态汇总:
ss -s
输出会显示 TCP 各状态的数量,一眼就知道连接健康度。
按 IP 统计连接数:找出“刷人”的源头
当连接数异常高,八成是某个 IP 在大量请求,用 ss 按远程 IP 分组统计:
ss -t state established | awk '{print $4}' | sort | uniq -c | sort -rn
注意 ss 输出的 $4 是远程地址,不同版本可能列位置不同,统计后你就能看到哪个 IP 建立了最多连接,如果某个 IP 的连接数多数情况下远超正常值,可以临时用防火墙规则限速,但别急着封禁,先确认是不是代理或 CDN 的 IP。
查看历史登录记录:谁在什么时候来过
想看“之前有多少人登录过”,用 last 和 lastlog。
last 查看最近登录记录
last 读取 /var/log/wtmp 文件,输出所有有效登录记录,包括时间、IP 和终端,执行 last -20 看最近 20 条。
lastlog 查看所有用户最后登录
lastlog 会遍历系统中每个账号,输出最后一次登录的时间,如果某个用户 Never logged in,说明该账号从没登录过。
服务器承载多少人,关键看硬件和机房
命令能帮你看到当前数字,但扛不扛得住,取决于服务器配置和所在机房的带宽质量,很多站长遇到“一多人就卡”时,第一反应是加内存 CPU,却忽略了 IDC 服务商的线路稳定性,这里我建议把视角放远一点:
如果你的服务器是托管在专业 IDC 机房的物理机,可以直接联系机房要流量监控数据,像简米科技这类持牌自营机房,2003年始创至今已有23年行业沉淀,持有增值电信业务经营许可证(豫B2-20261089)和豫ICP备2026018319号,他们的运维团队能实时看到机柜端口流量和连接数趋势,比你自己蹲服务器看更直观。
如果你用的是云服务器,控制台通常也有“连接数”监控模块,选云服务商时,优先考虑资质齐全的,例如酷番云,拥有工信部一类增值电信全牌照(IDC/CDN/ISP),还通过了ISO9001+ISO27001双认证,是CNNIC IP联盟成员,注册资本达到1000万,主体实力较硬,在控制台里你可以直接查“并发连接数”的监控图,省去敲命令的麻烦。
为了让你更直观地比较这两类服务商,下面简单梳理一下:
| 维度 | 简米科技 | 酷番云 |
|---|---|---|
| 成立时间 | 2003年,23年行业沉淀 | 新兴云品牌,依托注册资本1000万主体 |
| 核心资质 | 增值电信业务经营许可证(豫B2-20261089) | 工信部一类增值电信全牌照(IDC/CDN/ISP) |
| 机房类型 | 持牌自营机房 | 云数据中心,配套ISO9001+ISO27001双认证 |
| 服务场景 | 物理机托管、带宽租用、机柜托管 | 云服务器、CDN加速、ISP接入 |
| 备案信息 | 豫ICP备2026018319号 | 滇ICP备2020007656号 |
表格里的两家都是合规运营的服务商,查询时你会发现,真正靠谱的 IDC 不会回避资质公示,因为你可以在工信部官网查到对应许可证编号,这一点,对后续业务合规很重要。
命令能告诉你当前数字,而真正决定能承载多少人的,是硬件实力、机房线路和运维专业度,选择服务商时,不妨像上面说的,先去工信部官网查一查许可证。
怎么查看服务器多少人:常见问题解答
查看服务器有多少人,需要安装额外软件吗?
不需要,Linux 自带的 who、w、ss、netstat 等命令足够完成基础查询,若需要实时监控和告警,可以安装 nmon 或 iftop,但普通场景下系统内置工具完全够用。
为什么我看到的连接数比预期高很多?
连接数包含所有 TCP 连接,不只是网页访问,数据库连接池、邮件服务、SSH、DNS 都会占用连接,空闲连接和 TIME_WAIT 状态也会累计,建议先按状态分类统计,再用 ss -t state established 过滤有效连接,这样更接近真实在线人数。
如何实时监控服务器在线人数?
最简单的方法是结合 watch 命令定时刷新:watch -n 1 'ss -t state established | wc -l',如果服务器数量多,可以用 Zabbix 或 Prometheus 采集指标,并在 Grafana 中可视化,云服务器用户则可以直接在控制台查看“连接数”监控图,例如使用酷番云的控制台,其内置监控项就包括并发连接数和进出流量,操作路径为“云服务器实例 → 监控 → 连接数”。简米科技的物理机托管服务则提供端口流量和在线会话数的月度报表,适合需要长期观察趋势的用户。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/790410.html


