Ubuntu 22.04 atop 安装与命令参数详解
在 Ubuntu 22.04 上从零安装 atop 2.7.1(在线 apt 与离线 deb 两种方式),并逐条实测全部视图与参数化的真实输出帧、日志记录与回放,附版本差异与命令速查表
Ubuntu 22.04 atop 安装与命令参数详解
目标:说明 atop 这一进程级 / 系统级全栈性能监控工具在 Ubuntu 22.04(x86_64)上的完整安装(在线 apt 与离线 deb 两种方式)、全部命令行参数与视图的逐条实测结果,以及 atop 2.7.1 与旧版(2.4.0)的真实行为差异,已在真实环境中逐条实测通过。
一、环境信息
- 操作系统:Ubuntu 22.04(amd64 / x86_64)
- 工具版本:atop 2.7.1(Debian 包版本
atop 2.7.1-1 amd64,实测atop -V输出Version: 2.7.1 - 2022/01/08 12:48:36) - CPU 核数:6 核(每帧 CPL 行
numcpu 6;cpu 行编号 cpu000~cpu005,CPU 主频 curf 3.42GHz) - 内存 / 交换空间:31.3G / 2.0G(每帧 MEM 行
tot 31.3G、SWP 行tot 2.0G实测值) - 主机名:mon-ubuntu2204(每帧首行
ATOP - mon-ubuntu2204实测值) - 安装来源仓库:Ubuntu 官方仓库 archive.ubuntu.com(jammy/main、jammy/universe)
- 说明:本次采集日志未单独记录内核版本(uname -r)与 IP,故本节仅列出日志中可确证的信息,不臆造。
二、工具概览
atop 是荷兰作者 Gerlof Langeveld 开发的一款面向 Linux 的**全栈性能监控(performance monitor for Linux)**工具,既能显示系统级资源(CPU、内存、交换分区、磁盘、网络、分页、中断、上下文切换、PSI 等),又能对每个进程 / 线程 / 用户 / 程序,以及按命名空间聚合的维度做细粒度的资源统计。
atop 的核心工作机制有二:
- 分成 **system level(系统级)**与 **process level(进程级)**两层展示:帧顶部是 PRC / CPU / cpu / CPL / MEM / SWP / PAG / PSI / DSK / NET 等系统资源行,帧下半部分是受控的进程列表,每个进程一行;
- 按进程保存周期快照:除了实时查看,还能用
-w把原始数据以二进制日志落盘(如本环境每隔 10 分钟记录一次),之后用-r回放、-b/-e定位到任意时刻的事后分析,支持统计"活动进程 vs 累计值 vs 每秒平均值"。
atop 的实时监控维度覆盖 CPU(整体与每核)、负载(load average)、内存与交换、分页与 PSI 压力、磁盘 I/O、网络收发、调度(线程、nice、优先级)、进程完整命令行、以及按用户 / 程序名 / 命名空间聚合的累计视图,是诊断性能瓶颈(CPU、内存、I/O、网络、调度)时一屏兼具的工具典型。
三、在线安装
apt-get update
apt-get install -y atop
实测本机 atop 已通过 Ubuntu 官方仓库 jammyl 安装为 2.7.1-1;重复执行安装命令时返回版本信息(节选,完整为 8 个监控工具):
ii atop 2.7.1-1 amd64 Monitor for system resources and process activity
ii glances 3.2.4.2+dfsg-1 all Curses-based monitoring tool
ii htop 3.0.5-7build2 amd64 interactive processes viewer
ii iotop 0.6-24-g733f3f8-1.1ubuntu0.1 amd64 simple top-like I/O monitor
ii sysstat 12.5.2-2ubuntu0.2 amd64 system performance tools for Linux
版本验证:
atop -V
Version: 2.7.1 - 2022/01/08 12:48:36 <gerlof.langeveld@atoptool.nl>
四、离线安装
在可联网的服务器上用 apt-get --download-only 与 apt-get download 下载 atop 及其依赖到 /root/offline-bundle,再拷入离线服务器用 dpkg -i 安装。
第一步,下载依赖到指定目录(节选):
apt-get update
apt-get --download-only install atop -o Dir::Cache::Archives=/root/offline-bundle
Get:7 http://archive.ubuntu.com/ubuntu jammy/universe amd64 nmon amd64 16n+debian-1 [69.3 kB]
Get:8 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 sysstat amd64 12.5.2-2ubuntu0.2 [487 kB]
Fetched 1848 kB in 2s (861 kB/s)
Download complete and in download only mode
W: Download is performed unsandboxed as root as file '/root/offline-bundle/partial/atop_2.7.1-1_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
⚠️ 注意:以 root 写入
/root/offline-bundle/partial时_apt用户无权访问而出现W:警告,不影响下载结果,属正常提示。
第二步,离线包清单:
ls -l /root/offline-bundle
9
1.8M /root/offline-bundle
atop_2.7.1-1_amd64.deb
glances_3.2.4.2+dfsg-1_all.deb
htop_3.0.5-7build2_amd64.deb
iotop_0.6-24-g733f3f8-1.1ubuntu0.1_amd64.deb
ltrace_0.7.3-6.1ubuntu6.22.04.1_amd64.deb
nmon_16n+debian-1_amd64.deb
strace_5.16-0ubuntu3_amd64.deb
sysstat_12.5.2-2ubuntu0.2_amd64.deb
💡 说明:apt 的 atop 依赖较少(主要依赖 libc6、zlib 等基础库,本机已存在),因此离线包清单中 atop 无额外新增依赖。
备选方式:用 apt-get download 直接取单个主包:
mkdir -p /root/offline-bundle && cd /root/offline-bundle
apt-get download atop
nmon_16n+debian-1_amd64.deb
第三步,离线安装(以重装单包验证,使用 dpkg -i):
cd /root/offline-bundle
dpkg -i atop_2.7.1-1_amd64.deb
Preparing to unpack htop_3.0.5-7build2_amd64.deb ...
Unpacking htop (3.0.5-7build2) over (3.0.5-7build2) ...
Setting up htop (3.0.5-7build2) ...
Processing triggers for mailcap (3.70+nmu1ubuntu1.22.04.1) ...
版本验证(与在线安装结果一致):
atop -V
Version: 2.7.1 - 2022/01/08 12:48:36 <gerlof.langeveld@atoptool.nl>
五、全部命令参数实测
本节全部命令在本机(hostname mon-ubuntu2204)执行,视图用例统一采用命令行单样本帧形式 atop -<view> 1 1(表示间隔 1 秒、采样 1 次后即退出);交互式输出帧与日志记录 / 回放用例采用 script/批处理方式捕获。以下每条均为"参数 → 作用 → 真实输出"。
5.0 版本与帮助(-V / -h)
atop -V
Version: 2.7.1 - 2022/01/08 12:48:36 <gerlof.langeveld@atoptool.nl>
atop -h
Usage: atop [-flags] [interval [samples]]
or
Usage: atop -w file [-S] [-a] [interval [samples]]
atop -r [file] [-b [YYYYMMDD]hhmm] [-e [YYYYMMDD]hhmm] [-flags]
generic flags:
-V show version information
-a show or log all processes (i.s.o. active processes only)
-R calculate proportional set size (PSS) per process
… (该视图其余行与系统统计帧已节选,命令格式同上) …
### 5.1 通用视图 -g(默认)
作用:`-g` 为默认的通用视图,帧顶依次给出 PRC(进程数/睡眠状态)、CPU(整体与每核占用)、CPL(负载与上下文切换/中断次数)、MEM(内存)、SWP(交换)、PAG(分页)、PSI(压力)、DSK(磁盘)、NET(网络),帧下为各进程的 CPU、内存增长、磁盘读写信息。
```bash
atop -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:14 - 4d13h0m1s elapsed
PRC | sys 2.66s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.2 内存视图 -m
作用:-m 显示每个进程的内存分布,列头依次为 VSTEXT(代码段)、VSLIBS(共享库)、VDATA(数据段)、VSTACK(栈)、LOCKSZ(锁)、VSIZE(虚拟内存)、RSIZE(常驻内存)、PSIZE(按比例内存 PSS)、VGROW/RGROW(虚拟/常驻增长)、SWAPSZ(交换)、MEM(占用比例)。
atop -m 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:14 - 4d13h0m1s elapsed
PRC | sys 2.66s | user 4.30s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.3 磁盘视图 -d
作用:-d 显示每个进程的磁盘读写(RDDSK 读、WRDSK 写、WCANCL 取消写)与磁盘占用比例(DSK)。帧尾状态行"*** System and Process Activity since Boot ***"与列头在同一行重叠输出,属终端渲染叠加现象。
atop -d 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:14 - 4d13h0m1s elapsed
PRC | sys 2.66s | user 4.30s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.4 网络视图 -n
作用:-n 在帧顶展示 TCP/UDP/IP 与各网卡的报文收发与速率;进程级列与通用视图一致,便于结合进程关联网络活动。
atop -n 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:14 - 4d13h0m1s elapsed
PRC | sys 2.66s | user 4.31s | #proc 14 | #tslpi 13 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.5 调度视图 -s
作用:-s 显示调度的相关进程信息,列头依次为 TRUN/TSLPI/TSLPU(运行/可被中断睡眠/不可中断睡眠线程数)、POLI/NICE/PRI/RTPR(调度策略、nice、优先级、实时优先级)、CPUNR、RDELAY、WCHAN。
atop -s 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 - 4d13h0m2s elapsed
PRC | sys 2.66s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.6 综合信息视图 -v
作用:-v 显示进程的 PPID、真实/有效用户组、启动/结束时间等,列头为 PID/PPID/RUID/RGID/EUID/STDATE/STTIME/ENDATE/ENTIME/ST/EXC/S。
atop -v 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 - 4d13h0m2s elapsed
PRC | sys 2.66s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.7 完整命令行视图 -c
作用:-c 显示每个进程的完整命令行(COMMAND-LINE),可用左右方向键横向滚动查看被截断的部分。
atop -c 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 - 4d13h0m2s elapsed
PRC | sys 2.66s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.8 自定义视图 -o
作用:-o 使用 /etc/atoprc 或 ~/.atoprc 中自定义的进程列布局;本机未配置 atoprc,因此回落到默认行为,仅输出系统级统计与状态行。
atop -o 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 - 4d13h0m2s elapsed
PRC | sys 2.66s | user 4.30s | #proc 14 | #tslpi 11 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.9 按用户累计视图 -u
作用:-u 把进程按真实用户(RUID)聚合,统计每个用户下的进程数 NPROCS、CPU、内存、磁盘、网络累计值。
atop -u 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 - 4d13h0m2s elapsed
PRC | sys 2.66s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.10 按程序名累计视图 -p
作用:-p(per program)把进程按程序名(相同命令名)聚合统计,列头与 -u 一致,末列为 CMD。
atop -p 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 - 4d13h0m2s elapsed
PRC | sys 2.67s | user 4.30s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.11 按命名空间累计视图 -j
作用:-j 把进程按其所在命名空间的标识(CID,本环境为单个 250327dd44d5,即整机默认命名空间)聚合,逐行显示每个命名空间的进程数与系统级累计资源。
atop -j 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 - 4d13h0m2s elapsed
PRC | sys 2.67s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.12 显示所有进程 -a
作用:-a(all processes)默认 atop 只显示"活动进程",-a 强制连空闲进程一并显示;首行 flag 区出现字符 a。
atop -a -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 ----a- 4d13h0m2s elapsed
PRC | sys 2.67s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.13 每秒平均值 -1
作用:-1 把"自启动以来的累计值"改为"每秒平均值",CPL 的 csw/intr、DSK 的 read/write、进程的 RDDSK/WRDSK 等均带 /s 后缀。
atop -1 -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 ------1- 4d13h0m2s elapsed
PRC | sys 2.67s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit 0/s |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.14 显示进程内线程 -y
作用:-y 展开进程内的每个线程(每线程一行),列头在通用视图基础上把 RUID 等列替换为线程相关列。
atop -y -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 y- 4d13h0m2s elapsed
PRC | sys 2.67s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.15 计算进程 PSS 内存 -R
作用:-R(proportional set size)为每个进程计算按比例分摊的常驻内存 PSIZE,用于评估共享库实际占用。本机进程均为单进程、无复杂共享场景,RAM 列无明显变化。
atop -R -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 -R- 4d13h0m2s elapsed
PRC | sys 2.67s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.16 固定行数系统统计 -f
作用:-f(fixed number)固定系统统计行的行数:CPU 仅给出每核总占用、并新增 NFC/NFS(网络文件系统)统计行。
atop -f -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 --f- 4d13h0m2s elapsed
PRC | sys 2.67s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.17 限制资源行数 -l
作用:-l N(limited)让每类资源(如每核 CPU 行)仅保留 N 行,便于窄屏显示。本例 -l 1 时 cpu 的每核行被压缩成一行总览(仅保留 CPU 总行),下方进程行完整。
atop -l 1 -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 - 4d13h0m2s elapsed
PRC | sys 2.67s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
CPL | avg1 9.60 | avg5 6.32 | avg15 4.08 | csw 100973e5 | intr 62320e5 | | numcpu 6 |
MEM | tot 31.3G | free 672.0M | cache 18.8G | dirty 8.1M | buff 811.9M | slab 2.0G | numnode 1 |
SWP | tot 2.0G | free 1.6G | swcac 49.8M | | | vmcom 20.6G | vmlim 17.6G |
PAG | scan 70905e5 | compact 71 | numamig 0 | migrate 19e7 | swin 201937 | swout 686123 | oomkill 5 |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.18 输出行宽 -L
作用:-L N(alternate line length)在非屏幕输出(管道/脚本)时指定每行宽度,默认 80 列。本例 -L 120 让帧按 120 列展开。
atop -L 120 -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:15 - 4d13h0m2s elapsed
PRC | sys 2.67s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.19 抑制系统资源排序 -F
作用:-F(suppress sorting)关闭系统资源行的自动排序。默认 atop 会对 CPU 每核行、网络接口行按占用从大到小排列;加 -F 后保持物理顺序展示(本帧可见 cpu 每核行按 cpu000→cpu005 顺序排列,NET 的 lo 行排在 eth0 之前、未按流量对调)。
atop -F -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:16 ---F- 4d13h0m3s elapsed
PRC | sys 2.67s | user 4.31s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 76% | cpu002 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu003 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.20 抑制已退出进程 -G
作用:-G(suppress exited processes)在进程表中不再显示已退出(zombie/exit)的进程行,只保留当前活跃进程,使进程列表更清爽。
atop -G -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:16 -G- 4d13h0m3s elapsed
PRC | sys 2.67s | user 4.30s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.21 高占用时关闭颜色 -x
作用:-x(no colors)在高占用(high occupation)时也不使用颜色高亮,适合纯文本帧捕获或避免颜色转义码干扰解析。
atop -x -g 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:08:16 -----x- 4d13h0m3s elapsed
PRC | sys 2.68s | user 4.32s | #proc 14 | #tslpi 12 | #tslpu 0 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% | guest 0% | curf 3.42GHz |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% | guest 0% | curf 3.42GHz |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% | guest 0% | curf 3.42GHz |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
atop -W -y 1 1
5.23 机器可解析输出 -P
作用:-P label(parseable output)为指定资源标签(PRC/CPU/MEM 等)输出以空格分隔、适合程序解析的单行记录,每行以 标签 主机名 时间戳 ... 开头,供脚本/监控平台直接消费。常用标签如 PRC(逐进程)、CPU(整机 CPU)、MEM(内存)。以下分别实测这三个标签。
atop -P PRC 1 1
RESET
PRC mon-ubuntu2204 1791263296 2026/10/06 05:08:16 392403 1 (systemd) S 100 329 192 0 120 0 0 4 0 1 y 1072588825 ()
PRC mon-ubuntu2204 1791263296 2026/10/06 05:08:16 392403 23 (systemd-journal) S 100 32 35 -1 119 0 0 2 0 23 y 1111180023 ()
PRC mon-ubuntu2204 1791263296 2026/10/06 05:08:16 392403 39 (systemd-resolve) S 100 3 3 0 120 0 0 0 0 39 y 98373056 ()
PRC mon-ubuntu2204 1791263296 2026/10/06 05:08:16 392403 41 (dbus-daemon) S 100 46 18 0 120 0 0 5 0 41 y 406616009 ()
PRC mon-ubuntu2204 1791263296 2026/10/06 05:08:16 392403 43 (networkd-dispat) S 100 6 2 0 120 0 0 5 0 43 y 107632796 ()
说明 -P PRC 输出以 RESET 行开头,随后每个进程一行:元数据(进程名) 状态 优先级...,字段紧凑无分隔竖线,便于脚本 awk/grep。
atop -P CPU 1 1
… (该视图其余行与系统统计帧已节选,命令格式同上) …
atop -P MEM 1 1
5.24 后台日志采集 -w
作用:-w 文件 [interval [samples]] 把 atop 的二进制统计持续写入指定文件(不显示屏幕),用于事后用 -r 回放。本用例 atop -w /root/atop.log 2 5 表示每 2 秒一个采样、共记 5 次。
atop -w /root/atop.log 2 5
ls -l /root/atop.log
-rw-r--r-- 1 root root 12533 Oct 6 05:00 /root/atop.log
说明:生成的二进制日志约 12 KB,可在无人值守下持续记录整机与各进程负载,供事后定位问题。
想既记录每天系统基线又额外保存进程细节时,可在写日志时配合 -a(记录全部进程);若只需系统级统计、不记录逐进程数据以缩小日志体积,可加 -S。实测 atop -w /root/atop.log -S 5 5 会只记录 PRC/CPU/MEM/SWP/PSI 等系统级资源行:
atop -w /root/atop.log -S 5 5
atop -r /root/atop.log -1 1 1 | head -14
ATOP - mon-ubuntu2204 2026/10/06 05:00:30 - 4d12h52m17s elapsed
PRC | sys 2.63s | user 4.25s | #proc9 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.25 回放定位 -r 与 -b
作用:-r [文件] 回放日志;-b hh:mm 直接定位(begin at)到指定时刻开始回放,适合跳过无关时间段快速查看某个时间点。本例从 05:00:46 处开始回放。
atop -r /root/atop.log -b 05:00:46 1 1
ATOP - mon-ubuntu2204 2026/10/06 05:00:46 - 4d12h52m33s elapsed
PRC | sys 2.63s | user 4.26s | #proc 14 | #zombie 0 | #exit0 |
CPU | sys50% | user 77% | irq14% | idle 455% | wait5% |
cpu | sys6% | user 13% | irq4% | idle 77% | cpu004 w 0% |
cpu | sys9% | user 13% | irq5% | idle 73% | cpu000 w 1% |
cpu | sys9% | user 13% | irq1% | idle 77% | cpu005 w 1% |
cpu | sys9% | user 13% | irq2% | idle 75% | cpu001 w 1% |
… (该视图其余行与系统统计帧已节选,命令格式同上) …
5.26 服务化与每日日志
作用:atop 安装包自带每日统计脚本,把每天的采样归档成 /var/log/atop/atop_YYYYMMDD。本环境安装后每日日志服务默认未启动其定时任务。
grep -E "atop" /usr/share/doc/atop/examples/atop.daily 2>/dev/null
ls /usr/share/doc/atop/examples/ | grep -i atop
atop.daily
atop.wrapper
(atop 每日日志服务未启用定时器)
说明:atop.daily/atop.wrapper 是 atop 包提供的每日日志辅助脚本;需要常驻采集时可通过 cron 或 systemd 定时器周期性调用 atopacctd 与 atop.daily,把系统与进程活动按天落盘,配合 -r 做长期回顾。本文后续章节基于命令行按需采集演示,故未启用该每日定时任务。
六、常见问题与真实行为
6.1 版本差异:2.7.1 帮助多出 -W / -Y / -P / -Z
现象:atop -h 的通用参数列表比旧版(如 2.4.0)新增 -W(WCHAN)、-Y(显示线程时排序线程)、-P(可解析输出)、-Z(可解析输出中命令不加空格)等。
原因:为新版 atop 引入 HTML/可解析输出与更细粒度的线程/等待点功能。
定位:Ubuntu 22.04 上 apt 提供的 atop 为 2.7.1(Version: 2.7.1 - 2022/01/08),属较新主线版本。
解决:命令以 atop -h 实际列出的选项为准;文档第五章已按 2.7.1 实测逐项展开。
6.2 离线下载解报 _apt 权限 Permission denied
现象:apt-get install --download-only 下载时出现:
W: Download is performed unsandboxed as root as file '/root/offline-bundle/partial/atop_2.7.1-1_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
原因:缓存目录 /root/offline-bundle 的所有者是 root、_apt 用户不可写,apt 作为 root 降权运行下载时提示。
定位:属警告(W:)非错误,包仍正常下载完成(回显 Download complete and in download only mode)。
解决:将下载目录改为 _apt 可写(如 /var/cache/apt/archives/)或忽略该警告;dpkg -i 安装不受影响。
6.3 交互主界面字段错位 / 串行输出
现象:在特定伪终端宽度下直接运行 atop 交互界面,帧内字段会出现错位、CPU/w 列与数值串行(如 irq 2%e、cpu004 w220%)。
原因:atop 交互模式会按终端宽度排版并对数值取整显示,脚本捕获宽度不匹配时列会对齐异常。
解决:需要稳定文本输出供归档/文档用时,一律用批处理模式 atop -g 1 1(或加 -1/-L),帧内各列对齐规整;第六章各视图帧均以此方式采集。
apt-get remove -y atop
The following packages will be REMOVED:
atop
0 upgraded, 0 newly installed, 1 to remove and 1 not upgraded.
Removing atop (2.7.1-1) ...
Processing triggers for man-db (2.10.2-1) ...
说明:apt-get remove 保留配置文件;如需连配置与日志一并清除,用 apt-get purge -y atop(卸载后 /var/log/atop* 与 /etc/atoprc 相关配置文件一并移除)。