Linux top命令的用法详解

概述

top命令是Linux下常用的性能分析工具,常用来监控Linux的系统状况,比如cpu、内存的使用等。相当于Windows下的资源管理器,能够动态实时的显示系统中进程的资源占用情况。

top使用方法

top [-] [d] [p] [q] [c] [C] [S] [s] [n]

参数说明:

  • d 指定每两次屏幕信息刷新之间的时间间隔。当然用户可以使用回车(Enter)交互命令来改变之。
  • p 通过指定监控进程ID来仅仅监控某个进程的状态。
  • q 该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行。
  • S 指定累计模式
  • s 使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险。
  • i 使top不显示任何闲置或者僵死进程。
  • c 显示整个命令行而不只是显示命令名

top命令显示过程中的一些交互命令:

  • Ctrl + L :擦除并且重写屏幕
  • h或者?:显示帮助画面(按 q or <Esc> 返回)
  • c :切换显示命令名称和完整命令行。
  • m:切换显示内存信息。
  • M:根据驻留内存大小进行排序。
  • P :根据CPU使用百分比大小进行排序。
  • t  :切换显示进程和CPU状态信息。
  • T :根据时间或者累计时间进行排序。
  • I  :切换显示平均负载和CPU状态信息。
  • k :终止一个进程;默认使用15信号,可以使用信号9来强制结束该进程。但是在安全模式下此命令被屏蔽。
  • i  :忽略闲置和僵死进程,开关式命令。
  • q :退出程序。
  • r  :重新安排一个进程的优先级。默认值是10,输入一个正值使优先级降低;输入一个负值使优先级升高。
  • S :切换到累计模式。
  • s  :改变两次刷新的延迟时间。单位为秒,如果有小数,切换为ms,输入0则系统不断的刷新,默认值是5.
  • f或者F :从当前显示中添加或者删除项目。
  • o或者O :改变显示项目的顺序。
  • W:写top配置文件的方法。将当前设置写入~/toprc文件中。

top视图详情

下面是刚进入top的基本视图,我们来结合这个视图讲解各个数据的含义。

第一行:top

  • 16:37:18 — 当前系统时间
  • 85 days, 23:53 — 系统已经运行了85天23小时53分钟(在这期间服务器没有重启过)
  • 1 users — 当前有2个用户登录系统
  • load average: 1.13, 0.89, 1.41 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。

第二行:Tasks

  • Tasks — 任务(进程),系统现在共有156个进程,其中1个处于运行中(running),155个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。

第三行:Cpu状态  %Cpu(s)

  • 11.4% us — 用户空间占用CPU的百分比。
  • 2.3% sy — 内核空间占用CPU的百分比。
  • 0.0% ni — 改变过优先级的进程占用CPU的百分比
  • 84.5% id — 空闲CPU百分比
  • 0.9% wa — IO等待占用CPU的百分比
  • 0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
  • 1.0% si — 软中断(Software Interrupts)占用CPU的百分比
  • 0.0% st — 这一显示项单位为百分比,它的值表明你的系统花了百分之多少等待得到真正的cpu资源。在正常情况下在云平台下st最好为0,这表明你的vm得到了所有必要的cpu资源。如果这个值为50,表明你vm需要cpu时有一半时间在等待。如果这个值为100%,那么表明你的vm花了100%的时间等待真实的cpu资源。

第四行:内存状态  KiB Mem(单位k)

  • 32947136 total — 物理内存总量(≈31.42GB)
  • 32535760 used — 使用中的内存总量(≈31.02GB)
  • 411376 free — 空闲内存总量(≈401.73M)
  • 143216 buffers — 缓存的内存量(≈139.85M)

第五行:swap交换分区  KiB Swap(单位k)

  • 0 total — 交换区总量
  • 0 used — 使用的交换区总量
  • 0 free — 空闲交换区总量
  • 9226092 cached — 缓冲的交换区总量(≈8.80GB)

第六行是空行

第七行以下:各进程(任务)的状态监控

  • PID — 进程id
  • USER — 进程所有者
  • PR — 进程优先级
  • NI — nice值。负值表示高优先级,正值表示低优先级
  • VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
  • RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
  • SHR — 共享内存大小,单位kb
  • S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
  • %CPU — 上次更新到现在的CPU时间占用百分比
  • %MEM — 进程使用的物理内存百分比
  • TIME+ — 进程使用的CPU时间总计,单位1/100秒
  • COMMAND — 进程名称(命令名/命令行)

多核CPU监控

在top基本视图中,按键盘数字“1”,可监控每个逻辑CPU的状况:

服务器有8个逻辑CPU

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
top命令Linux下的一个常用命令,用于查看系统的性能状况,包括CPU、内存、进程等信息。下面是top命令用法的详细介绍: 1. 命令格式 top命令的基本格式为: ``` top [options] ``` 2. 命令参数 top命令的常用参数如下: - -d seconds:指定top命令的刷新时间,默认为3秒。 - -n iterations:指定top命令的刷新次数,执行完后自动退出。 - -p pid:显示指定进程的信息。 - -U username:显示指定用户的信息。 - -u username:显示指定用户或进程的信息。 - -b:以批处理模式运行,输出到文件。 - -c:显示完整的命令行信息。 - -i:不显示闲置的进程。 - -o field:按照指定的字段排序,可以用逗号分隔多个字段。 - -h:显示帮助信息。 3. 显示内容 top命令默认显示的内容包括: - 第一行:系统启动时间、系统运行时间、当前登录用户数、负载平均值。 - 第二行:总进程数、运行中的进程数、休眠进程数、停止进程数、僵尸进程数。 - 第三行:CPU的使用情况,包括用户进程、系统进程、空闲进程、等待输入/输出的进程、硬中断和软中断。 - 后面的行:按照CPU使用率从高到低排列的进程列表,包括进程ID、用户名、CPU使用率、内存使用率、进程状态、运行时间、命令行。 4. 常用操作 - h:显示帮助信息。 - q:退出top命令。 - k:结束指定进程。 - r:修改进程的优先级。 - s:修改top命令的刷新时间。 - Space:刷新top命令的显示内容。 总之,top命令Linux系统监控和调试的重要工具之一,掌握其用法可以更好地了解系统的性能状况,提高系统的稳定性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值