linux学习第二十七篇:使用w查看系统负载,vmstat,top,sar,nload命令

使用w查看系统负载

w/uptime的命令结果是一样的

1. 第一行从左面开始显示的信息依次为:时间,系统运行时间,登录用户数,平均负载。 2. 最应该关注的应该是第一行中的 load average也就是平均负载的三个值。 第一个数值表示1分钟内系统的平均负载值;第二个数值表示5分钟内系统的平均负载值;第三个数值表示15分钟系统的平均负载值。 3. 这个值的意义是,单位时间段内CPU活动进程数。当然这个值越大就说明你的服务器压力越大。一般情况下这个值只要不超过服务器的cpu数量就没有关系,这里的cpu的数量是指逻辑cpu不是物理cpu。 4. 查看系统有多少cpu:cat /proc/cpuinfo

[root@xie-02 ~]# cat /proc/cpuinfo
processor   : 0     //如果是0,那就是1颗cpu,如果是1那就是2颗,依次类推,这说的是逻辑cpu。也就是说上述的平均负载为1是最理想的。
vendor_id   : GenuineIntel
cpu family  : 6
model       : 60
model name  : Intel(R) Core(TM) i3-4000M CPU @ 2.40GHz
stepping    : 3
microcode   : 0x17
cpu MHz     : 2393.468
cache size  : 3072 KB
physical id : 0
siblings    : 1
core id     : 0
cpu cores   : 1
apicid      : 0
initial apicid  : 0
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt xsave avx f16c rdrand hypervisor lahf_lm arat epb pln pts dtherm fsgsbase smep xsaveopt
bogomips    : 4788.98
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

vmstat 监控系统状态

vmstat命令可以查看包括cpu,内存,虚拟磁盘,交换分区,系统进程等等相关的信息

用法 vmstat 1:数字1表示每一秒钟显示一次,ctrl+c可以终止。 用法 vmstat 1 5:表示每一秒钟显示一次,显示五次后结束。 有上图可知 vmstat显示的分为6部分:procs, memory, swap, io, system, cpu. 需要关注的:r,b,swpd,si,so,bi,bo,us,wa

r:run,表示有多少个进程处于运行和等待的状态,不管是在排队还是正在使用cpu的,只要是在排队那就属于r的状态。

b:block,进程被cpu以外的资源,比如被硬盘,网络阻断,堵住。处于等待的状态。

swpd:当内存不够的时候,系统会把内存的一部分东西临时放到swap空间里,这个swpd数值就会变化。如果这个数值持续变化,那说明交换分区swap和内存在频繁交换数据,说明内存不够了。

si:swap 内存交换情况,有多少kb的数据从交换区进入到内存中。swpd有变化si也就会有变化(以内存为参照物,i就是in,进入到内存)。

so:swap 内存交换情况,有多少kb的数据从内存写入到交换区。swpd有变化so也就会有变化(o是out,从内存里出来)。

bi:与磁盘有关系,从磁盘里出来进入到内存,也就是读的数据量有多少(读磁盘)。

bo:与磁盘有关系,从内存进入到磁盘,也就是写的数据量有多少(写磁盘。如果bi,bo数值很大的话说明磁盘在频繁读写)。

us:表示用户级别,用户占用cpu资源的百分比。

sy:系统本身的进程,服务占用cpu的资源百分比。

id:idle空闲的意思,us+sy+id=100。

wa:wait等待,等待cpu的百分比,有多少个进程在等待cpu,如果很大说明cpu不够用。

top命令

top 显示进程所占系统资源,3秒钟显示一次动态信息。 q:退出top。 top -c :可以查看具体的命令。 top -bn1:静态的一次性显示所有信息。适合写shell脚本的时候用。

第一行跟w命令查看到的信息是一样的。 第二行分别是,有多少个任务(total),有多少个运行的任务(running),有多少个休眠状态的任务(sleeping),有多少个停止的任务(stopped),有多少个僵尸进程(zombie/主进程被意外终止,留下子进程在这留着没人管,只能自生自灭)。 第三行是cpu的百分比,st是被偷走的cpu百分比,需要多关注的是us,如果长时间在60%以上,对机器不好。 第四行是物理内存,通常情况下比较关注这行,内容分别是:内存有多大,还有多少剩余,使用了多少,还有多少缓冲缓存。 第五行是交换分区。

默认是按cpu从高到低排序,谁使用cpu最多就排在最前。在 top 状态下,按 “M”, 可以按照内存使用大小排序。“P”就是按cpu排序。按数字“1”会在第三行显示指定cpu的使用状态

%MEM:内存。

RES:物理内存大小,单位是kb。

sar命令

sar命令非常全面分析系统状态,它可以监控系统所有资源状态,比如平均负载、网卡流量、磁盘状态、内存使用等等。它不同于其他系统状态监控工具的地方在于,它可以打印历史信息,可以显示当天从零点开始到当前时刻的系统状态信息。被称作linux系统里的“瑞士军刀”。

命令安装:yum install -y sysstat

/var/log/sa:这是sar工具生成的历史文件所在的目录。sar的特性:每十分钟会把系统状态保存一遍存在/sa目录的文件,保存在/sa目录下的文件如当天为10号就会生成sa10的文件,不会该文件是二进制文件,不可以cat查看,不过隔天会生成sar10的文件,可以通过cat查看。

sar -n DEV :查看网卡流量,sar -n DEV 1 10表示每隔1秒显示一次,显示10次。

第一行是时间 第二行是网卡名 第三行rxpck是接收到的数据包,单位是个。(数据包几千是正常,如果是上万就不正常。) 第四行txpck是发出去的数据包,单位是个。 第五行rxkB接收的数据量,单位是kb。 第六行txkB发送出去的数据量,单位kb。

sar -n DEV -f /var/log/sa/sa18:可以查看sar命令记录的历史数据,sa18是当天18号的数据,也可以是其他时间。

sar -q:查看负载。sar -q 1 5,每隔1秒显示一次,显示5次。

sar -b:查看磁盘的读和写。sar -b 1 5,每隔1秒显示一次,显示5次。

nload

nload命令安装包: yum install -y epel-release(先前安装过的不用安装,直接安装nload包) yum install -y nload

动态显示网卡实时速度: nload 最上面一行显示的是网卡的信息和网卡数量,按左右方向键可以切换网卡(如果有攻击,那么进来的流量(incoming)就会很大)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏编程

Linux常用网络工具总结(一)

本文整理了在实践过程中使用的Linux网络工具,这些工具提供的功能非常强大,我们平时使用的只是冰山一角,比如、、、等。 本文不会深入研究这些命令的强大用法,因为...

2777
来自专栏编程微刊

微信小程序云开发 初学者入门教程二

如何操作数据库,作为一名前端,如果对数据的知识不够熟悉也没关系,从现在开始好好学习就行,数据库的操作内容差不多涉及增删改查四大模块,花一些业余的时间在上面,也必...

8111
来自专栏游戏杂谈

关于chrome插件编写的小结

其中manifest文件最为重要,它定义/指明插件应用的相关信息(权限、版本、功能说明等),点此查看Manifest的详情>>

2853
来自专栏北京马哥教育

如何判断目标站点是否为Django开发

老文一篇,几个月以前发在【代码审计】小密圈里的文章,当时是写一个系列(Django安全漫谈),抽出其中的一部分,分享一下。 在黑盒测试的情况下,如何判断一个站是...

3148
来自专栏后端云

Raft算法和Gossip协议

raft 集群中的每个节点都可以根据集群运行的情况在三种状态间切换:follower, candidate 与 leader。leader 向 follower...

2853
来自专栏逸鹏说道

Rookey.Frame企业级快速开发框架开源了

Rookey.Frame是一套基于.NET MVC + easyui的企业级极速开发框架,支持简单逻辑模块零代码编程、支持工作流(BPM)、支持二次开发,具有...

4306
来自专栏前端vue

微信公众号授权登陆PHP

在微信公众号请求用户网页授权之前,要先到公众平台官网中修改授权回调域名 正式公众号:开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信...

1.4K3
来自专栏FreeBuf

挖洞经验 | 一个价值$3133.7美金的Google漏洞

在对Google的安全研究中,由于其云服务平台“cloud.google.com” 具备多种功能,感觉有点意思,所以某天我决定来深入测试一下它。

1395
来自专栏木头编程 - moTzxx

小程序 发送模板消息的功能实现

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/de...

1.9K2
来自专栏ShaoYL

GitHub 使用手册 - 基础篇

4238

扫码关注云+社区