使用atop监控系统资源
约 485 字大约 2 分钟
2026-08-29
atop 是带历史回放的资源监控工具:默认每 10 分钟把整机快照写入日志,"昨晚 23 点卡了一下到底是谁干的"这类问题,事后用它回放现场即可,不需要问题发生时正好有人在跑 top。
安装与启动
# CentOS
sudo yum install -y atop && sudo systemctl enable --now atop
# Ubuntu
sudo apt install -y atop && sudo systemctl enable --now atop实时界面直接运行:
sudo atop界面速读
第一屏上半部分是系统概览,重点几行:
| 行 | 关键字段 | 关注点 |
|---|---|---|
| PRC | load、sys/usr | 负载是否超核心数 |
| CPU | sys、usr、idle、wai | wai 高 = 磁盘 IO 等待 |
| MEM | tot、free、cache、vmc(换页) | Swap 在涨就是内存不足 |
| DSK | busy | 接近 100% = 磁盘打满 |
| NET | hit/流量 | 网络是否异常 |
下半部分是进程列表,AVG 列为该进程对资源的平均占用率。
常用按键
| 按键 | 作用 |
|---|---|
1 | 按资源汇总排序展示 |
m / d / n | 按内存 / 磁盘 / 网络排序进程 |
t / T(大写) | 前进 / 后退一个快照(历史回放) |
b | 跳转到指定时间点 |
p | 显示完整命令行 |
q | 退出 |
历史回放:还原"昨晚卡顿现场"
快照保存在 /var/log/atop/:
# 回放某个时间点的快照
sudo atop -r /var/log/atop/atop_20260829 -b 22:50
# 进入后用 t / T 逐帧翻看,d/m/n 切换排序找元凶定位思路与卡顿排查一致:先看 DSK busy 还是 CPU/MEM 异常,再切对应排序找进程,完整流程见Linux系统卡顿排查。
与其他工具的配合
- 快照间隔默认 600 秒,太粗时改
/usr/share/atop/atop.daily中的INTERVAL(如 120 秒); - 抓网络包细节用 tcpdump,见tcpdump抓包入门;
- 日常速查命令见Linux资源查看基础命令,atop 适合当"行车记录仪"常开。
