top 命令详解
8
- uvim管理员
top是 Linux/Unix 系统中最常用的实时系统监控工具,分为上半部分(系统全局汇总)和下半部分(进程列表)。一、 系统汇总区域(前 5 行)
第 1 行:系统基本信息与负载 (System Uptime & Load)
top - 14:29:52 up 25 days, 17:48, 1 user, load average: 4.49, 4.89, 5.0014:29:52:当前系统时间。up 25 days, 17:48:系统连续运行时间。1 user:当前登录的用户数量。load average: 4.49, 4.89, 5.00:系统在过去 1 分钟、5 分钟、15 分钟内的平均负载。单核 CPU 超过 1.0 即表示超负荷。
第 2 行:任务/进程统计 (Tasks)
Tasks: 685 total, 3 running, 680 sleeping, 0 stopped, 2 zombietotal:总进程数。running:正在运行的进程数。sleeping:休眠中的进程数。stopped:已停止的进程数。zombie:僵尸进程数(占用进程号未释放,需重点关注)。
第 3 行:CPU 使用率 (CPU Usage)
%Cpu(s): 12.5 us, 3.2 sy, 0.0 ni, 83.1 id, 0.2 wa, 0.0 hi, 1.0 si, 0.0 stus(User):用户空间占用 CPU 百分比。sy(System):内核空间占用 CPU 百分比。ni(Nice):改变过优先级的进程占用 CPU 百分比。id(Idle):CPU 空闲百分比。wa(IO-wait):等待 I/O(如读写磁盘)的 CPU 时间百分比,数值过高说明磁盘有瓶颈。hi(Hardware IRQ):硬中断占用百分比。si(Software Interrupts):软中断占用百分比。st(Steal Time):被虚拟化偷走的时间(用于虚拟机环境)。
第 4 & 5 行:物理内存与 Swap 交换分区 (Mem & Swap)
MiB Mem : 15886.5 total, 2340.1 free, 8500.0 used, 5046.4 buff/cache MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 6800.0 avail Memtotal:内存总量。free:空闲物理内存。used:已使用内存。buff/cache:用作内核缓存和缓冲区的内存。avail Mem:不使用 Swap 的情况下,可分配给新应用使用的实际可用内存(最核心参考值)。
二、 进程列表区域字段说明
字段名 含义 说明 PID 进程 ID 进程的唯一标识符。 USER 所有者 运行该进程的用户。 PR 调度优先级 Priority,数值越小优先级越高。 NI Nice 值 优先级修正值,负值表示高优先级,正值表示低优先级。 VIRT 虚拟内存 进程申请的总虚拟内存大小。 RES 常驻内存 进程实际占用的物理内存大小(重点关注)。 SHR 共享内存 进程使用的共享内存大小。 S 进程状态 R(运行) /S(休眠) /D(不可中断休眠) /Z(僵尸) /T(停止)。%CPU CPU 占用率 进程占用的 CPU 资源百分比(多核系统可能超过 100%)。 %MEM 内存占用率 进程占用物理内存的百分比。 TIME+ CPU 时间 进程累计消耗的 CPU 时间。 COMMAND 命令行 启动进程的命令/程序名称。 三、 常用交互按键(在 top 运行界面直接按)
排序与显示控制:
P:按 CPU 使用率降序排序(默认)。M:按 内存使用率降序排序。N:按 PID 大小排序。T:按 CPU 运行时间排序。R:切换升序/降序。1:展开/折叠显示所有逻辑 CPU 核心的使用率。c:切换显示完整命令行/仅程序名。z:开启/关闭高亮彩色显示。
进程管理与筛选:
k:杀死进程。输入 PID 后按回车,再输入 Signal(默认15正常退出,9强制杀死)。r:修改进程优先级 (Renice)。输入 PID 后按回车,再输入新的 Nice 值。u:按指定用户筛选进程。d或s:修改刷新间隔时间(默认 3 秒)。q:退出top命令。
四、 常用命令行启动参数
top -d 1:设置刷新时间间隔为 1 秒。top -u root:仅监控root用户的进程。top -p 1234,5678:仅监控指定 PID 的进程。top -b -n 1 > top.txt:批处理模式运行 1 次并将结果输出到文件(常用于脚本日志收集)。
- 暂无回复