top命令详解:
作为工作中常用的命令之一,主要用来监控linux系统状态,包括cpu、内存等,接下来就对其返回值做一个详细的介绍:
第一行:
- 18:48:18 up 9:01 —— 现在时间为 18:48:18 ,已运行9:01个小时
- 2 users —— 表示有2个用户登录该系统
- load average:0.00, 0.01, 0.05 —— 三个数分别是5分钟、10分钟、15分钟的负载情况
工作中需要注意的点:load average 为每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值,主要含义如下:
load average <1,系统系统正常
1<= load average <5 ,系统马上要处理不过来了,希望对系统进行排查
load average >5,系统已超负荷运行
第二行:
Tasks:进程
- 系统现在共有118个进程(total),运行状态的 1个(running),休眠状态的117个(sleeping),stopped状态的0个,僵尸进程0个(zombie).
第三行:
- %cpu(s):不同时间下的cpu时间百分比
工作中需要注意的点:
- wa,IO wait: 用于等待IO完成的CPU时间,当值超过公司规定的报警值时,需要尽快解决或上报。
第四行和第五行:
- 两行为内存使用率,反馈内容类似于free命令
- 第四行为物理内存,第五行为交换分区内存。
可用内存或总内存(total)、空闲内存(free)、已使用内存(used)、缓冲内存(buff/cache)
第六行:
- 各进程监控状态
pid :进程数
user: 进程用户名
pr:进程的调度优先级
ni:进程的优先级,越小的值意味着越高的优先级
virt:进程的虚拟内存
res:进程的共享内存,特指物理内存
shr:进程使用的共享内存
s:进程的状态:包括 R – 运行状态,S – 睡眠状态,T – 被跟踪或已停止,Z – 僵尸状态
%cpu:上一次更新到现在任务所使用的CPU时间百分比
%mem:进程使用的可用物理内存百分比
time+:任务启动后到现在所使用的全部cpu时间
command:运行进程所使用的命令