Linux之sar&iostat命令学习

1.uptime 是监控系统性能最常用的一个命令,主要用来统计系统当前的运行状况。

2.free是监控linux内存使用状况最长用的命令:free -m -s 5


3.vmstat(virtual memory statistics)虚拟内存统计,可以对操作系统的内存信息、进程状态、cpu活动等进行监视,不足之处是无法对某个进程进行深入分析。
(1)r列表示运行和等待cpu时间片的进程数,这个值如果长期大于系统cpu的个数,说明cpu不足,需要增加cpu.
(2)b列表示在等待资源的进程数,比如正在等待I/0或者内存交换等。
(3)swpd列表示切换到内存交换去的大小。
(4)buff列表示当前空闲的物理内存数量,一般对快设备的读写才需要缓冲。
(5)cache列表示page cached的内存数量,一般作为文件系统进行缓存,频繁访问的文件都会被缓存,如果cache值较大,说明缓存的文件数较多,如果此时io中的bi比较小,说明文件系统效率比较好。
(6)si列表示由磁盘调入内存,也就是由内存进入内存交换区的内存大小。
(7)so列表示由内存调入磁盘,也就是由内存交换区进入内存的内存大小。
(8)在一般情况下,si,so的值都为0,如果si.so的值长期不为0,则表示系统内存不足,需要增加系统内存。
(9)bi列表示从快设备读入数据的总量(读磁盘)
(10)bo列表示写到快设备的数据的总量(写磁盘)
这里设置的bi+bo参考值为1000,如果超过1000,而且wa值比较大,则表示系统磁盘I/O有问题,应该考虑提高磁盘的读写性能。
(11)in列表示在某一时间间隔内观测到的每秒设备中断数。
(12)cs列表示每秒产生的上下文切换次数。这两个值越大,由内核消耗的cpu时间越多。
(13)us列表示用户进程消耗的cpu时间百分比。
(14)sy列表示内核进程的cpu时间百分比。
(15)id列表示cpu处在空闲状态的时间百分比
(16)wa列表示io等待所占用的cpu时间百分比。
在对cpu的评估中,需要重点注意procs项中r列的值和cpu项中us、sy和id列的值


4.sar命令很强大,是分析系统性能的重要工具之一,通过sar命令,可以全面获取系统的cpu、运行队列、磁盘、分页、内存、cpu中断、网络等性能数据。
由于默认不安装sar,需要安装sysstat包来安装sar 、iostat等命令行。
sar -u 3 5 查看系统第一个cpu的整体负载情况。
sar -P 1 3 5 查看系统第二个cpu的整体负载情况。
sar -d 3 5 查看系统磁盘的读写情况。
sar -r 5 2 产看系统内存使用情况
sar -n DEV 5 3 查看系统网络运行状态。DEV 显示网络接口信息。EDEV显示网络错误的统计数据。SOCK显示套接子信息,FULL显示前三参数的所有信息。


5.iostat (I/O statistics)输入/输出统计,主要功能是对系统的磁盘I/O操作进行监视。
iostat -d 2 3 查看系统磁盘的使用状况
(1)Blk_read/s 表示每秒读取的数据块数
(2)Blk_wrtn/s表示每秒写入的数据块数
(3)Blk_read表示读取的所有块数
(4)Blk_wrtn 表示写入的所有块数
iostat -x /dev/sda 2 3 与sar -d 输出基本相同
(1)rrqm/s 表示每秒进行合并的读操作数目
(2)wrqm/s 表示每秒进行合并的写操作数目
(3)r/s表示每秒完成读I/O设备的次数
(4)w/s表示每秒完成写I/O设备的次数。
(5)rsec/s表示每秒读取的扇区数
(6)wsec/s表示每秒写入的扇区数。


6.ps 将某个时间点的程序运作情况撷取下来
ps aux 列出目前所有的正在内存当中的程序,这个是最长用的。
ps -l 将目前属于您自己这次登入的 PID 与相关信息列示出来

ps和top的区别
ps看到的是命令执行瞬间的进程信息,而top可以持续的监视
ps只是查看进程,而top还可以监视系统性能,如平均负载,cpu和内存的消耗
另外top还可以操作进程,如改变优先级(命令r)和关闭进程(命令k)

posted @ 2012-07-07 17:42  一宁  阅读(4302)  评论(0编辑  收藏  举报