vmstat 命令是最常见的 Linux/Unix 监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的 CPU 使用率,内存使用,虚拟内存交换情况,IO 读写情况。...这个命令是我查看 Linux/Unix 最喜爱的命令,一个是 Linux/Unix 都支持,二是相比 top,我可以看到整个机器的 CPU,内存,IO 的使用情况,而不是单单看到各个进程的 CPU 使用率和内存使用率...b:在等待io的进程数 。 (2)Linux 内存监控内存memoy: swpd:现时可用的交换内存(单位KB)。 free:空闲的内存(单位KB)。 ...(5)Linux 内存监控system系统: in: 每秒的中断数,包括时钟中断。 cs: 每秒的环境(上下文)转换次数。 ...swpd 虚拟内存已使用的大小,如果大于 0,表示你的机器物理内存不足了,如果不是程序内存泄露的原因,那么你该升级内存了或者把耗内存的任务迁移到其他机器。
2. vmstat的符号含义介绍 符号 含义 r 等待CPU时间的进程数 b 处于不可中断休眠中的进程数 swpd 使用的虚拟内存总量(单位:MB) free 空闲的物理内存总量(单位:MB) buff...bo 发送给块设备的块数 in 每秒的CPU中断次数 cs 每秒的CPU上下文切换数 us 用于执行非内核代码的CPU时间所占的百分比 sy 用于执行内核代码的CPU时间所占的百分比 id 处于空闲状态的...: $ vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd...vmstat 2 5 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd...0 0 1 0 2508 143964080 0 98876032 0 0 0 0 35374 42967 8 23 69 0 0 参考资料 Linux
(每个3秒刷新一次) procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- r b swpd...此数由 linux 计算得出,但 linux 并不耗尽交换空间 Memory swpd: 虚拟内存使用情况,单位:KB free: 空闲的内存,单位KB buff: 被用来做为缓存的内存数,单位:...第二台机与第一台相比,wa和b字段远大于0,说明进程在等待输入输出而被中断, 且swpd 和 si so也远大于0说明内存已经不够用使用到了交换分区,出现这种情况有两个可能: 1....procs -----------memory---------- ---swap-- -----io---- -system-- -----cpu------ r b swpd free ...3 93 0 0 procs -----------memory---------- ---swap-- -----io---- -system-- -----cpu------ r b swpd
vmstat -a procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd...vmstat 2 6 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd...-----------memory---------- ---swap-- -----io---- --system-- -----cpu------ ---timestamp--- r b swpd...-S M 1 5 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd...仅显示单个设备的 I/O 统计信息。 默认情况下,它显示所有分区的统计信息,包括 -p 和设备名称参数仅显示磁盘 I/O 特定设备的统计数据。
在进行内存优化之前,一定要熟悉Linux的内存管理机制,这里我们重点探讨如何通过系统命令监控Linux系统的内存使用状况。 free 命令 free是监控Linux内存使用状况最常用的指令....procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- r b swpd free buff...,在vmstat中重点关注的是swpd、si和so行。...从这个输出可以看出,此系统内存资源紧缺,swpd占用了900MB左右内存,si和so占用了很大内在,而由于系统内存的紧缺,导致出现15%左右的系统等待,此时增加系统的内存是必须要做的。...“sar –r”命令组合 sar命令也可以监控Linux的内存使用状况。可以通过“sar –r”命令组合查看系统内存和交换空间的使用率。
查看系统负载 常用命令,其中1表示1秒刷新一次,-S表示单位,M表示MB vmstat 1 -S M 简介 vmstat是一个十分有用的Linux系统监控工具,使用vmstat命令可以得到关于进程...在Linux内存管理中,主要是通过“调页Paging”和“交换Swapping”来完成上述的内存调度。调页算法是将内存中最近不常使用的页面换到磁盘上,把活动页面保留在内存中供进程使用。...---- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi...Memory(内存): swpd: 使用虚拟内存大小 free: 可用内存大小 buff: 用作缓冲的内存大小 cache: 用作缓存的内存大小 Swap: si: 每秒从交换区写到内存的大小...so: 每秒写入交换区的内存大小 IO:(现在的Linux版本块的大小为1024bytes) bi: 每秒读取的块数 bo: 每秒写入的块数 系统: in: 每秒中断数,包括时钟中断。
vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可实时动态监视操作系统的虚拟内存、进程、CPU活动 vmstat的语法 vmstat [-V] [-n] [delay...[count]] -V表示打印出版本信息; -n表示在周期性循环输出时,输出的头部信息仅显示一次; delay是两次输出之间的延迟时间; count是指按照这个时间间隔统计的次数。...$vmstat 5 5 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd...Memory(内存): swpd: 使用虚拟内存大小 free: 可用内存大小 buff: 用作缓冲的内存大小 cache: 用作缓存的内存大小 Swap: si: 每秒从交换区写到内存的大小 so:...每秒写入交换区的内存大小 IO:(现在的Linux版本块的大小为1024bytes) bi: 每秒读取的块数 bo: 每秒写入的块数 system: in: 每秒中断数,包括时钟中断 cs: 每秒上下文切换数
参考以下输出: $ vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- r b swpd...-system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa...$ vmstat 30 procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- r b swpd...0 0 0 3 162 55 1339 0 0 0 0 313 771 3 1 96 0 如何解释 vmstat 输出 vmstat 报告描述了 Linux...我们希望所提供的这些资料是有用的,但请注意,我们无法保证外部托管材料的准确性或及时性。 Linux 吃了我的内存 Linux 上的内存使用情况
~]# vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd...# vmstat 1 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd...#Procs(进程) r: 运行队列中进程数量 b: 等待IO的进程数量 #Memory(内存) swpd: 使用虚拟内存大小 free: 空闲物理内存大小 buff: 用作缓冲的内存大小 cache...: 用作缓存的内存大小 #Swap si: 每秒从交换区写到内存的大小,由磁盘调入内存 so: 每秒写入交换区的内存大小,由内存调入磁盘 #IO(现在的Linux版本块的大小为1kb) bi: 每秒读取的块数...us的值比较高时,说明用户进程消耗的CPU时间多。
vmstat 5 5 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd...(长期大于1) b: 等待IO的进程数量 Memory(内存) swpd: 使用虚拟内存大小,如果swpd的值不为0,但是SI,SO的值长期为0,这种情况不会影响系统性能...free: 空闲物理内存大小 buff: 用作缓冲的内存大小 cache: 用作缓存的内存大小,如果cache的值大的时候,说明cache处的文件数多,如果频繁访问到的文件都能被cache...处,那么磁盘的读IO bi会非常小 Swap si: 每秒从交换区写到内存的大小,由磁盘调入内存 so: 每秒写入交换区的内存大小,由内存调入磁盘 注意:内存够用的时候,这2...IO(现在的Linux版本块的大小为1kb) bi: 每秒读取的块数 bo: 每秒写入的块数 注意:随机磁盘读写的时候,这2个值越大(如超出1024k),能看到CPU在IO等待的值也会越大
之前文章《Linux服务器性能评估与优化(一)》太长,阅读不方便,因此拆分成系列博文: 《Linux服务器性能评估与优化(一)--CPU》 《Linux服务器性能评估与优化(二)--内存》 《Linux...服务器性能评估与优化(三)--磁盘i/o》 《Linux服务器性能评估与优化(四)--网络》 《Linux服务器性能评估与优化(五)--内核参数》 我们通过top或者ps -aux查看应用实际占用的内存和虚拟内存...1.1 linux虚拟内存页 对Linux系统而言,虚拟内存就是swap分区。Linux虚拟内存被分成页,在 X86 架构下的每个虚拟内存页大小为 4KB。...linux内核判断和选择一个”bad进程是通过调用oom_badness()方法,挑选的算法如上。...如果swpd的值不为0,或者比较大,只要si、so的值长期为0,这种情况下一般不用担心,不会影响系统性能。
vmstat 属系统管理员命令,属于 sysstat 软件包,RedHat 系的 Linux 可以用 yum install sysstat 直接安装。...vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd...该数值如果长时间大于 1,则表明系统 I/O 遇到瓶颈 memory(内存,单位 KB) swpd 虚拟内存(swap 空间)已使用的大小 free 空闲的物理内存的大小 buff 用作缓冲的内存大小...vmstat -a procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd...---- 参考文献 [1] vmstat(8) manual [2] sysstat 官网 [3] 博客园.每天一个linux命令(46):vmstat命令
vmstat 命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,MEM内存使用,VMSwap虚拟内存交换情况,IO读写情况。...这个命令是查看Linux/Unix最好的命令,一个是Linux/Unix都支持,二是相比top,可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样...swpd 虚拟内存已使用的大小,如果大于0表示你的机器物理内存不足了(内存耗尽了,开始使用虚拟内存空间了),如果不是程序内存泄露的原因,那么你该升级内存了或者把耗内存的任务迁移到其他机器。...buff Linux/Unix系统是用来存储,目录里面有什么内容,权限等的缓存,本机大概占用300多M cache 用来记忆我们打开的文件,给文件做缓冲。...参考推荐: Linux性能分析 vmstat基本语法 Linux下的top命令的图解使用
1.vmstat--虚拟内存统计 vmstat(VirtualMeomoryStatistics,虚拟内存统计) 是Linux中监控内存的常用工具,可对操作系统的虚拟内存、进程、CPU等的整体情况进行监视...内存不足的表现:free memory急剧减少,回收buffer和cacher也无济于事,大量使用交换分区(swpd),页面交换(swap)频繁,读写磁盘数量(io)增多,缺页中断(in)增多,上下文切换...长期大于CPU的个数,代表CPU不足 B: 等待资源的进程数,如果等待数量多,问题有可能处在I/O或者内存 Swpd: 切换到内存交换区的内存大小[以KB为单位] free: 当前空闲的物理内存数量[以...常见linux的磁盘IO指标的缩写习惯:rq是request,r是read,w是write,qu是queue,sz是size,a是verage,tm是time,svc是service。...3.iotop--LINUX进程实时监控工具 iotop命令是专门显示硬盘IO的命令,界面风格类似top命令,可以显示IO负载具体是由哪个进程产生的。
监控系统状态 vmstat 命令,监控系统状态 用法 vmstat 1 关键的几列:r ,b,swpd,si,so,bi,us,wa vmstat命令 用 w 命令查看系统的负载,当系统的负载值偏高时...~]# vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd...,r列,b列,swpd列,si列,so列,bi列,bo列,us列,wa列 r 英文单词(run),表示多少个进程处于 run 的状态 在排着队,或者在进行中的进程,都属于run 的状态 b 英文单词...(block),表示进程被CPU以外的资源给占用,处于一个等待的状态 swpd 在磁盘分区的时候,有一个swap空间,当内存不够使用时,可以把内存里的一部分数据临时放到swap空间里去 当内存不够的时候...当swpd数字不变时,则没有关系; 若是数字在持续的变化,那说明你的交换分区和你的磁盘在频繁的交换数据——>这只有一个结果,就是你的内存不够用了 si,so 和swpd是有相关联的,在swpd在频繁的改变
服务器状态分析 查看Linux服务器CPU详细情况 #查看CPU的信息 [root@host ~]# cat /proc/cpuinfo #查看物理CPU的个数 [root@host /]# cat.../dev/sda2 14 78 522112+ 82 Linux swap / Solaris /dev/sda3 79 1305 9855877+ 83 Linux #检查文件系统的磁盘空间占用情况...vmstat 1 4 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd...b:非中断睡眠状态的进程数 w:被交换出去的可运行进程数 #memory swpd:虚拟内存使用情况 fres:空闲的内存 buff:用作缓存的内存数(单位:KB) #swap si:从磁盘交换到内存的交换页数量...2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped 查看服务器使用的Linux发行版的相关信息 [
什么是上下文切换 根据任务的不同 CPU上下文切换可以分为进程上下文切换 线程上下文切换和中断上下文切换 CPU上下文切换是保证Linux系统正常工作的核心功能之一,Linux多任务操作系统主要原因之一就是因为将...频繁的上下文切换会把时间用在寄存器/内核栈/以及虚拟内存等数据的保存和恢复上,从而缩短进程真正执行的时间,导致系统的整体性能下降 系统调用完成的是用户到内核态的转变,系统调用需要将用户态的指令位置先保存起来...,然后将CPU寄存器更新为内核态指令的新位置,然后开始执行内核态代码,而调用结束后,需要恢复用户态指令的位置继续执行。...vmstat 1 1 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd...# vmstat 1 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd
学习如何监控系统状态,是因为作为一个运维工程师需要了解Linux系统运行时的各种信息和状态,当出现问题的时候就能够查找出问题的所在,这样才能对症下药的去解决。 ...在以上使用vmstat命令得出的信息我们一般只需要关注r、b、swpd、si、so、bi、bo、us、sy、id、wa这几个列: r是run的简写,表示有多少个进程处于run的状态,就算进程在等待也是run...swpd就表示交换分区和内存交换数据的情况、信息,当系统内存不够了,这一列就会有数值信息波动,数值为0则是内存还是足够的状态。...si、so和swpd有关系,当swpd有数值变化时,si、so也会出现数值的变动。...sar是一个非常全面的分析系统状态的命令,sar被称做Linux系统里的“瑞士×××”,也即是说这个命令的功能非常的复杂和丰富,如果你的系统里没有这个命令,则需要安装sysstat包: ?
需要关注的:r,b,swpd,si,so,bi,bo,us,wa r:run,表示有多少个进程处于运行和等待的状态,不管是在排队还是正在使用cpu的,只要是在排队那就属于r的状态。...b:block,进程被cpu以外的资源,比如被硬盘,网络阻断,堵住。处于等待的状态。 swpd:当内存不够的时候,系统会把内存的一部分东西临时放到swap空间里,这个swpd数值就会变化。...si:swap 内存交换情况,有多少kb的数据从交换区进入到内存中。swpd有变化si也就会有变化(以内存为参照物,i就是in,进入到内存)。...so:swap 内存交换情况,有多少kb的数据从内存写入到交换区。swpd有变化so也就会有变化(o是out,从内存里出来)。...它不同于其他系统状态监控工具的地方在于,它可以打印历史信息,可以显示当天从零点开始到当前时刻的系统状态信息。被称作linux系统里的“瑞士军刀”。
上次在服务器实战的时候出了问题一时要分析各种问题,还是非常需要把核心的命令和工具记录下来。...还有做交换区之类的,可以参看另外几篇博文。 5:查看linux系统的平均负载 uptime 最后三个数字是指1,5,15分钟的进程队列中的平均进程数量。...:~# vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd...b:处于非中断睡眠状态的进程数。 memory:kb为单位。...原创文章,转载请注明: 转载自URl-team 本文链接地址: linux运维常用状态检测工具集锦 Related posts: linux下free查看内存命令详细解析 Linux查看实时带宽流量情况以及查看端口信息
领取专属 10元无门槛券
手把手带您无忧上云