
选对工具才能高效采集和监控 Linux 性能数据。关键不是功能越多越好,而是看是否匹配你的使用场景:是快速排查问题、长期趋势分析、还是自动化告警?下面几个工具覆盖了大多数实际需求。
实时交互式查看:htop 和 top
日常运维中快速了解系统“此刻”状态,首选 htop;它比 top 更直观——带颜色区分、CPU 核心条形图、内存使用进度条,支持鼠标点击排序、方向键选择进程、F9 杀进程,操作更顺手。top 虽略显陈旧,但所有发行版默认自带,无需安装,适合应急或脚本中调用。两者都支持按 CPU(P)、内存(M)、运行时间(T)排序,也都能用 k 发送信号终止进程。
轻量级全指标采集:nmon
需要一次性看清 CPU、内存、磁盘 I/O、网络、内核线程等几十项指标,并且希望低开销、不干扰业务?nmon 是理想选择。启动后按 c(CPU)、m(内存)、d(磁盘)、n(网络)等快捷键切换视图,界面清爽,信息密度高。更重要的是它支持后台批量采集:nmon -f -s 2 -c 1800 表示每 2 秒采一次、共采 1800 次(即 1 小时),生成带时间戳的 .nmon 文件,后续可用 nmon_analyser 导出 Excel 分析图表。
系统级统计与历史回溯:vmstat + sar
vmstat 提供简洁的周期性快照,适合快速判断瓶颈类型:看 r(就绪队列长度)高说明 CPU 紧张,b(阻塞进程数)高可能 I/O 或内存不足,wa(I/O 等待)持续 >20% 就要查磁盘。sar 则更进一步,依赖 sysstat 包,能记录并回溯历史数据,比如 sar -u 1 5 实时看 5 次 CPU 使用,sar -r 查历史内存使用,sar -f /var/log/sa/sa05 读取 5 号的日志——这对复盘故障、做容量规划非常实用。
进程级 I/O 与网络定位:iotop 和 iptraf-ng
当 top/htop 显示 CPU 或内存正常,但系统响应慢,往往卡在 I/O 上。iotop 能直接列出每个进程的读写速率(B/s)、IO%,一眼锁定“磁盘杀手”。类似地,iptraf-ng(原 IPTraf 的现代维护版)提供交互式网络流量统计,可按接口、协议、端口过滤,看到哪些进程或连接占用了最多带宽,比 netstat 或 ss 更聚焦实时吞吐量。











