Linux重要命令-sar
sar是System Activity Reporter(系统活动情况报告)的缩写。sar工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态。它的特点是可以连续对系统取样,获得大量的取样数据;取样数据和分析的结果都可以存入文件,所需的负载很小。sar是目前Linux上最为全面的系统性能分析工具之一,可以从14个大方面对系统的活动进行报告,包括文件的读写情况、系统调用的使用情况、串口、CPU效率、内存使用状况、进程活动及IPC有关的活动等,使用也是较为复杂。
sar是查看操作系统报告指标的各种工具中,最为普遍和方便的;它有两种用法;
- 追溯过去的统计数据(默认)
- 周期性的查看当前数据
12.1. 追溯过去的统计数据
默认情况下,sar从最近的0点0分开始显示数据;如果想继续查看一天前的报告;可以查看保存在/var/log/sysstat/下的sa日志; 使用sar工具查看:
$sar -f /var/log/sysstat/sa28 \| head sar -r -f /var/log/sysstat/sa28
12.2. 查看CPU使用率
sar -u : 默认情况下显示的cpu使用率等信息就是sar -u;
root@zhouwj-virtual-machine:~# sar 1 3
Linux 4.18.0-25-generic (zhouwj-virtual-machine) 2019年07月29日 _x86_64_ (1 CPU)
15时45分52秒 CPU %user %nice %system %iowait %steal %idle
15时45分53秒 all 3.03 0.00 1.01 0.00 0.00 95.96
15时45分54秒 all 4.17 0.00 1.04 0.00 0.00 94.79
15时45分55秒 all 4.08 0.00 2.04 0.00 0.00 93.88
平均时间: all 3.75 0.00 1.37 0.00 0.00 94.88
可以看到这台机器使用了虚拟化技术,有相应的时间消耗; 各列的指标分别是:
- %user 用户模式下消耗的CPU时间的比例;
- %nice 通过nice改变了进程调度优先级的进程,在用户模式下消耗的CPU时间的比例
- %system 系统模式下消耗的CPU时间的比例;
- %iowait CPU等待磁盘I/O导致空闲状态消耗的时间比例;
- %steal 利用Xen等操作系统虚拟化技术,等待其它虚拟CPU计算占用的时间比例;
- %idle CPU空闲时间比例;
12.3. 查看平均负载
sar -q: 查看平均负载
指定-q后,就能查看运行队列中的进程数、系统上的进程大小、平均负载等;与其它命令相比,它能查看各项指标随时间变化的情况;
- runq-sz:运行队列的长度(等待运行的进程数)
- plist-sz:进程列表中进程(processes)和线程(threads)的数量
- ldavg-1:最后1分钟的系统平均负载 ldavg-5:过去5分钟的系统平均负载
- ldavg-15:过去15分钟的系统平均负载
12.4. 查看内存使用状况
sar -r: 指定-r之后,可查看物理内存使用状况;
root@zhouwj-virtual-machine:~# sar -r 1 3
Linux 4.18.0-25-generic (zhouwj-virtual-machine) 2019年07月29日 _x86_64_ (1 CPU)
15时48分34秒 kbmemfree kbavail kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
15时48分35秒 187404 601168 1829664 90.71 39360 487912 4389064 146.94 619928 610900 0
15时48分36秒 187404 601168 1829664 90.71 39360 487912 4389064 146.94 619928 610900 0
15时48分37秒 187404 601168 1829664 90.71 39360 487912 4389064 146.94 619928 610900 0
平均时间: 187404 601168 1829664 90.71 39360 487912 4389064 146.94 619928 610900 0
- kbmemfree:这个值和free命令中的free值基本一致,所以它不包括buffer和cache的空间.
- kbmemused:这个值和free命令中的used值基本一致,所以它包括buffer和cache的空间.
- %memused:物理内存使用率,这个值是kbmemused和内存总量(不包括swap)的一个百分比.
- kbbuffers和kbcached:这两个值就是free命令中的buffer和cache.
- kbcommit:保证当前系统所需要的内存,即为了确保不溢出而需要的内存(RAM+swap).
- %commit:这个值是kbcommit与内存总量(包括swap)的一个百分比.
12.5. 查看页面交换发生状况
sar -W:查看页面交换发生状况
页面发生交换时,服务器的吞吐量会大幅下降;服务器状况不良时,如果怀疑因为内存不足而导致了页面交换的发生,可以使用这个命令来确认是否发生了大量的交换;
Linux 4.18.0-25-generic (zhouwj-virtual-machine) 2019年07月29日 _x86_64_ (1 CPU)
15时49分24秒 pswpin/s pswpout/s
15时49分25秒 0.00 0.00
15时49分26秒 0.00 0.00
15时49分27秒 0.00 0.00
平均时间: 0.00 0.00
- pswpin/s:每秒系统换入的交换页面(swap page)数量
- pswpout/s:每秒系统换出的交换页面(swap page)数量
要判断系统瓶颈问题,有时需几个 sar 命令选项结合起来;
- 怀疑CPU存在瓶颈,可用 sar -u 和 sar -q 等来查看
- 怀疑内存存在瓶颈,可用sar -B、sar -r 和 sar -W 等来查看
- 怀疑I/O存在瓶颈,可用 sar -b、sar -u 和 sar -d 等来查看
12.6. 安装
- 有的linux系统下,默认可能没有安装这个包,使用apt-get install sysstat 来安装;
- 安装完毕,将性能收集工具的开关打开: vi /etc/default/sysstat
设置 ENABLED=”true”
- 启动这个工具来收集系统性能数据: /etc/init.d/sysstat start
12.7. sar参数说明
- -A 汇总所有的报告
- -a 报告文件读写使用情况
- -B 报告附加的缓存的使用情况
- -b 报告缓存的使用情况
- -c 报告系统调用的使用情况
- -d 报告磁盘的使用情况
- -g 报告串口的使用情况
- -h 报告关于buffer使用的统计数据
- -m 报告IPC消息队列和信号量的使用情况
- -n 报告命名cache的使用情况
- -p 报告调页活动的使用情况
- -q 报告运行队列和交换队列的平均长度
- -R 报告进程的活动情况
- -r 报告没有使用的内存页面和硬盘块
- -u 报告CPU的利用率
- -v 报告进程、i节点、文件和锁表状态
- -w 报告系统交换活动状况
- -y 报告TTY设备活动状
参考资料:https://linux.cn/article-9398-1.html
Linux重要命令-sar相关推荐
- linux 命令自动提示错误信息,Linux基础命令---sar显示系统活动信息
选项说明 -A显示所有报告 -b显示IO状态以及传输速率,有一下值可以显示: tps,每秒发送给物理设备的传输总数.传输是对物理设备的I/O请求.多个逻辑请求可以组合成对设备的单个I/O请求.转移是不 ...
- linux系统管理工具sar(一)
linux系统管理工具sar 监控网卡流量 #sar -n DEV 1 1 (1秒内取1次) Linux 3.10.0-123.9.3.el7.x86_64 (iZ25wvw5wozZ) 01/22/ ...
- linux top命令查看内存及多核CPU的使用讲述 [转]
2019独角兽企业重金招聘Python工程师标准>>> linux top命令查看内存及多核CPU的使用讲述 [转] FROM: http://www.lvtao.net/html/ ...
- linux top命令查看内存及多核CPU的使用讲述【转】
转载一下top使用后详细的参数,之前做的笔记找不见了,转载一下,作为以后的使用参考: 原文地址:http://blog.csdn.net/linghao00/article/details/80592 ...
- Linux 常用命令笔记
Linux 常用命令笔记 1. locate locate:用来定位文件的位置,如:locate a.txt 但是这个命令有延迟,也就是新建的文件不一定能搜索到,如果非要找到新建的文件可以使用 upd ...
- 37条常用Linux Shell命令组合
2019独角兽企业重金招聘Python工程师标准>>> 37条常用Linux Shell命令组合,推荐个各位网友,老手和新手们都值得收集和总结的东西.一起来看看 序号 任务 命令组合 ...
- kali linux 升级命令_作为高级Java,你应该了解的Linux知识
原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,转载请保留出处. 作为一个javaer,我以前写过很多关于Linux的文章.但经过多年的观察,发现其实对于大部分人,有些东西压根就用不着.用 ...
- linux 强制结束p进程的命令,Linux常用命令之性能命令
本文介绍Linux常用性能统计分析命令,监控进程或者系统性能.主要包括CPU(top.mpstat).内存(vmstat.free).I/O(iostat).网络性能(sar).系统日志信息(dems ...
- linux 关机命令_小猿圈Linux基础命令汇总
科技进步的今天,互联网不断的发展,很多人学习Linux运维的时候会因为记不住一些命令从而去找一些渠道,有时候因为找不到linux的命令而烦恼,下面是小猿圈linux讲师给大家总结的linux基础命令, ...
最新文章
- SpringBoot用容器IoC管理Bean
- 鼠标移动响应php程序,jQuery实现的响应鼠标移动方向插件用法示例【附源码下载】...
- Linux: chm转HTML How to Convert chm files to HTML or PDF files
- 创建SSIS包—建立端到端的package
- C# WinForm开发系列 - Crystal Report
- python学了真的很有用吗-python学了真的很有用吗?当然!赶紧学,不学后悔!
- 【JQuery NoviceToNinja系列】目录
- visionpro图片转图片数组_图片怎么转换成PDF格式文件?图片转PDF软件要这样操作...
- Hash算法及数字签名【六】
- html页眉页脚独立,页眉页脚怎么单独设置
- 隄上创新谁述记——老码农的“创新”漫谈
- tomcat部署静态网页
- 武汉理工大学计算机辅助项目管理简答题,武汉理工大学软件项目管理实验报告...
- css文本属性 首行缩进
- 你的每行代码值多少钱?
- 【RPG黑暗之光】第四章· 物品模块
- english book1 unit8
- 北理计算机学院毕设嗯开题报告,北理工德育论文开题报告(大学四年规划)
- Binet-Cauchy公式
- 手把手教你写批处理-批处理的介绍
热门文章
- 申报国家高新技术企业认定,这八大错误认识不能有 。
- 本地开发申请ssl证书并在宝塔上给网站配置ssl
- 2021最新大厂Java面试集合,顺利拿到offer
- 他是程序员出身,做了一款最遭人“恨”的App,挑战张小龙!
- OA协同办公系统初始化设置
- CodeForce 597ADivisibility
- 纳德拉干得不错!微软股价逼近14年最高点
- 虚拟机命令里面的光标不动了怎么办_Linux 11个炫酷的终端命令!你知道几个?
- Ray Debugger Crack,Ray 发送数据库查询
- 回顾2016年存储市场发展 解析产品涨价为何如此逆天