Linux系统分析常用指令
一.查看CPU
1.top命令
1.1 功能说明
top命令经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。
1.2 使用语法
top [-d number] | top [-bnp]
参数说明:
-d:number代表秒数,表示top命令显示的页面更新一次的间隔。默认是5秒。
-b:以批次的方式执行top。
-n:与-b配合使用,表示需要进行几次top命令的输出结果。
-p:指定特定的pid进程号进行观察。
在top命令显示的页面还可以输入以下按键执行相应的功能(注意大小写区分的):
1.3 指令定向操作
?:显示在top当中可以输入的命令
P:以CPU的使用资源排序显示
M:以内存的使用资源排序显示
N:以pid排序显示
T:由进程使用的时间累计排序显示
k:给某一个pid一个信号。可以用来杀死进程
r:给某个pid重新定制一个nice值(即优先级)
q:退出top(用ctrl+c也可以退出top)。
1.4 top输出参数含义
这里以centos7.5系统top的输出参数说明:
- 第1行
top - 22:45:59 up 212 days, 23:08, 3 users, load average: 0.00, 0.01, 0.05
第一行是任务队列信息。
内容 | 说明 |
---|---|
22:45:59 | 表示当前时间 |
up 212 days,23:08 | 系统运行时间 格式为天/时/分 |
3 users | 当前登录用户数 |
load average: 0.00, 0.01, 0.05 | 系统负载,即任务队列的平均长度。 三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。 |
load average: 如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。 |
- 第2行
Tasks: 501 total, 1 running, 500 sleeping, 0 stopped, 0 zombie
第2行为进程信息。
内容 | 说明 |
---|---|
501 total | 进程总数 |
1 running | 正在运行的进程数 |
500 sleeping | 睡眠的进程数 |
0 stopped | 停止的进程数 |
0 zombie | 僵尸进程数 |
- 第3行
%Cpu(s): 0.6 us, 0.6 sy, 0.0 ni, 98.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
第3行为CPU信息。
内容 | 说明 |
---|---|
0.6 us | 用户进程空间占用CPU百分比 |
0.6 sy | 内核进程空间占用CPU百分比 |
0.0 ni | 用户进程空间内改变过优先级的进程占用CPU百分比 |
98.8 id | 空闲CPU百分比 |
0.0 wa | 等待输入输出的CPU时间百分比 |
0.0 hi | 硬中断(Hardware IRQ)占用CPU的百分比 |
0.0 si | 软中断(Software Interrupts)占用CPU的百分比 |
0.0 st | 虚拟机占用百分比 |
- 第4行
KiB Mem : 13140930+total, 8161100 free, 1786144 used, 12146206+buff/cache
第4行内存相关信息。
内容 | 说明 |
---|---|
13140930+total | 物理内存总容量 |
8161100 free | 空闲的物理内存容量 |
1786144 used | 使用的物理内存容量 |
12146206+buff/cache | 用作内核缓存的内存量 |
- 第5行
KiB Swap: 4194300 total, 4170748 free, 23552 used. 12834009+avail Mem
第5行,交换区内存容量
内容 | 说明 |
---|---|
4194300 total | 交换区内存总量 |
4170748 free | 空闲的交换区总量 |
23552 used | 使用的交换区总量 |
12834009+avail Mem | 缓存的交换区总量 |
- 进程信息
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
内容 | 说明 |
---|---|
PID USER | 进程ID |
USER | 进程所有者的用户名 |
PR | 优先级 |
NI | nice值,负值表示高优先级,正值表示低优先级 |
VIRT | 进程使用的虚拟内存总量,单位kb |
RES | 进程使用的物理内存大小,单位kb |
SHR | 进程使用的共享内存大小,单位kb |
S | Process Status,进程状态。D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程 |
%CPU | 上次更新到现在的CPU时间占用百分比 |
%MEM | 进程使用的物理内存百分比 |
TIME+ | 进程使用的CPU时间总计 |
COMMAND | 命令行 |