top命令参数详解

各种教程·supo的文章 · 3 天前 · 28 人浏览

第一行:系统概况

top - 16:57:23 up 20 min,  1 user,  load average: 0.00, 0.01, 0.03
  • 16:57:23:当前系统时间。
  • up 20 min:系统已连续运行 20 分钟(从上次启动开始)。
  • 1 user:当前有 1 个用户登录到系统。
  • load average: 0.00, 0.01, 0.03:系统的平均负载,依次表示过去 1分钟、5分钟、15分钟 的负载。
    • 解读:对于单核 CPU,负载值 <1 表示系统空闲;=1 表示满负荷;>1 表示任务堆积。多核 CPU 需按核心数调整阈值(例如 4 核 CPU 的满负荷为 4.00)。

第二行:任务状态

Tasks: 131 total,   1 running, 130 sleeping,   0 stopped,   0 zombie
  • total:总进程数(131 个)。
  • running:正在运行(占用 CPU)的进程数(1 个)。
  • sleeping:等待资源(如 I/O、网络)的休眠进程数(130 个)。
  • stopped:被手动或信号暂停的进程数(0 个)。
  • zombie:僵尸进程数(0 个)。
    • 僵尸进程:已终止但未被父进程回收资源的进程。少量僵尸进程通常无害,但持续增加可能表明程序有缺陷。

第三行:CPU 使用情况

%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
  • us(user):用户空间进程的 CPU 占用率(0.0%)。
  • sy(system):内核空间进程的 CPU 占用率(0.0%)。
  • ni(nice):调整过优先级(nice 值)的用户进程占用率(0.0%)。
  • id(idle):CPU 空闲率(100.0%)。
  • wa(iowait):等待 I/O 操作的 CPU 时间占比(0.0%)。高值可能表示磁盘瓶颈。
  • hi(hardware interrupt):处理硬件中断的时间占比(0.0%)。
  • si(software interrupt):处理软件中断的时间占比(0.0%)。
  • st(steal time):虚拟机被宿主机“偷取”的 CPU 时间(0.0%)。高值表示虚拟化环境资源争抢。

第四行:物理内存(RAM)使用

KiB Mem :  4026152 total,  3255688 free,   346932 used,   423532 buff/cache
  • total:总内存(4,026,152 KiB ≈ 3.84 GB)。
  • free:完全未使用的内存(3,255,688 KiB ≈ 3.1 GB)。
  • used:已使用的内存(346,932 KiB ≈ 339 MB)。
  • buff/cache:内核缓冲区(buffers)和页面缓存(cache)占用的内存(423,532 KiB ≈ 413 MB)。
    • 注意buff/cache 内存可被快速回收用于新任务,因此实际可用内存 ≈ free + buff/cache

第五行:交换分区(Swap)使用

KiB Swap:  4063228 total,  4063228 free,        0 used.  3445680 avail Mem
  • total:交换分区总大小(4,063,228 KiB ≈ 3.87 GB)。
  • free:未使用的交换空间(4,063,228 KiB,当前未使用)。
  • used:已使用的交换空间(0 KiB)。
  • avail Mem:估算的可用内存(3,445,680 KiB ≈ 3.29 GB),考虑了缓存可回收部分。

运维关键点

  1. CPU 空闲率高(100% id):系统当前无计算密集型任务,资源充足。
  2. 内存使用:物理内存充足,未使用交换分区,无内存压力。
  3. 负载极低:系统处于空闲状态,适合执行维护任务。
  4. 僵尸进程:当前为 0,无需处理。

建议结合 top 的交互命令(如按 M 按内存排序、P 按 CPU 排序)进一步分析进程级资源消耗。

top运行时,按下 c显示详细命令、 按下 1显示全部cpu负载

top
Theme Jasmine by Kent Liao