千家信息网

Linux系统中sar命令的用法

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容介绍了"Linux系统中sar命令的用法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、命
千家信息网最后更新 2026年11月02日Linux系统中sar命令的用法

本篇内容介绍了"Linux系统中sar命令的用法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1、命令格式

sar (选项)(参数)

2、选项参数

-A:显示所有的报告信息;

-b:显示I/O速率;

-B:显示换页状态;

-c:显示进程创建活动;

-d:显示每个块设备的状态;

-e:设置显示报告的结束时间;

-f:从指定文件提取报告;

-i:设状态信息刷新的间隔时间;

-P:报告每个CPU的状态;

-R:显示内存状态;

-u:显示CPU利用率;

-v:显示索引节点,文件和其他内核表的状态;

-w:显示交换分区状态;

-x:显示给定进程的状态。


3
、使用示例

示例一: CPU资源监控

每5秒采样一次,连续采样2次,观察CPU 的使用情况,并将采样结果以二进制形式存入当前目录下的文件cpu.bin中

[root@wjq ~]# sar -u 5 2 -o cpu.bin
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:23:55 AM CPU %user %nice %system %iowait %steal %idle
11:24:00 AM all 0.61 0.00 0.61 0.00 0.00 98.78
11:24:05 AM all 0.41 0.00 0.41 0.20 0.00 98.98
Average: all 0.51 0.00 0.51 0.10 0.00 98.88

[root@ wjq ~]# ll cpu.bin
-rw-r--r-- 1 root root 27556 Oct 30 11:24 cpu.bin

--查看二进制文件cpu.bin中的内容,使用如下的命令
[root@wjq ~]# sar -u -f cpu.bin
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:23:55 AM CPU %user %nice %system %iowait %steal %idle
11:24:00 AM all 0.61 0.00 0.61 0.00 0.00 98.78
11:24:05 AM all 0.41 0.00 0.41 0.20 0.00 98.98
Average: all 0.51 0.00 0.51 0.10 0.00 98.88

说明:

CPU:all 表示统计信息为所有 CPU 的平均值。

%user:显示在用户级别(application)运行使用 CPU 总时间的百分比。

%nice:显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比。

%system:在核心级别(kernel)运行所使用 CPU 总时间的百分比。

%iowait:显示用于等待I/O操作占用 CPU 总时间的百分比。

%steal:管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟 CPU 的百分比。

%idle:显示 CPU 空闲时间占用 CPU 总时间的百分比。

备注:

1. 若 %iowait 的值过高,表示硬盘存在I/O瓶颈

2. 若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量

3. 若 %idle 的值持续低于1,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU 。

示例二: inode、文件和其他内核表监控

每10秒采样一次,连续采样3次,观察核心表的状态

[root@wjq bin]# sar -v 5 3
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:22:57 AM dentunusd file-nr inode-nr pty-nr
11:23:02 AM 66756 7424 63501 2
11:23:07 AM 66750 7232 63489 2
11:23:12 AM 66749 7200 63488 2
Average: 66752 7285 63493 2

说明:

dentunusd:目录高速缓存中未被使用的条目数量

file-nr:文件句柄(file handle)的使用数量

inode-nr:索引节点句柄(inode handle)的使用数量

pty-nr:使用的pty数量

示例三:内存和交换空间监控

每5秒采样一次,连续采样3次,监控内存分页

[root@wjq bin]# sar -r 5 3
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:21:47 AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
11:21:52 AM 653656 2415236 78.70 0 1632600 3353300 53.96 1216508 893016 0
11:21:57 AM 653656 2415236 78.70 0 1632600 3353300 53.96 1216516 893016 0
11:22:02 AM 659516 2409376 78.51 0 1632584 3338224 53.72 1211496 892996 0
Average: 655609 2413283 78.64 0 1632595 3348275 53.88 1214840 893009 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)的一个百分比.

Kbactive:活动内存量(以千字节计算)(最近使用的内存,通常不会被收回,除非绝对必要)

kbinact:不活动内存量(以千字节计算的内存(最近使用的内存),更有资格被用于其他目的)。

kbdirty:以KB为单位的内存量等待写入磁盘

示例四:内存分页监控

每5秒采样一次,连续采样3次,查看内存分页的使用情况

[root@wjq ~]# sar -B 5 3
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:35:00 AM pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff
11:35:05 AM 1.64 18.85 93.44 0.00 352.05 0.00 0.00 0.00 0.00
11:35:10 AM 0.00 6.53 7.35 0.00 9.18 0.00 0.00 0.00 0.00
11:35:15 AM 0.00 13.65 4.48 0.00 7.94 0.00 0.00 0.00 0.00
Average: 0.54 13.00 34.99 0.00 122.67 0.00 0.00 0.00 0.00

说明:

pgpgin/s:表示每秒从磁盘或SWAP置换到内存的字节数(KB)

pgpgout/s:表示每秒从内存置换到磁盘或SWAP的字节数(KB)

fault/s:每秒钟系统产生的缺页数,即主缺页与次缺页之和(major + minor)

majflt/s:每秒钟产生的主缺页数.

pgfree/s:每秒被放入空闲队列中的页个数

pgscank/s:每秒被kswapd扫描的页个数

pgscand/s:每秒直接被扫描的页个数

pgsteal/s:每秒钟从cache中被清除来满足内存需要的页个数

%vmeff:每秒清除的页(pgsteal)占总扫描页(pgscank+pgscand)的百分比

示例五:I/O和传送速率监控

每5秒采样一次,连续采样3次,报告缓冲区的使用情况

[root@wjq ~]# sar -b 5 3
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:38:16 AM tps rtps wtps bread/s bwrtn/s
11:38:21 AM 0.41 0.00 0.41 0.00 13.06
11:38:26 AM 0.82 0.00 0.82 0.00 26.23
11:38:31 AM 0.82 0.00 0.82 0.00 26.18
Average: 0.68 0.00 0.68 0.00 21.81

说明:

tps:每秒钟物理设备的 I/O 传输总量

rtps:每秒钟从物理设备读入的数据总量

wtps:每秒钟向物理设备写入的数据总量

bread/s:每秒钟从物理设备读入的数据量,单位为 块/s

bwrtn/s:每秒钟向物理设备写入的数据量,单位为 块/s

示例六:进程队列长度和平均负载状态监控

每5秒采样一次,连续采样3次,监控进程队列长度和平均负载状态

[root@wjq ~]# sar -q 5 3
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:39:52 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked
11:39:57 AM 0 328 0.04 0.03 0.05 0
11:40:02 AM 0 328 0.04 0.03 0.05 0
11:40:07 AM 0 326 0.03 0.03 0.05 0
Average: 0 327 0.04 0.03 0.05 0

说明:

runq-sz:运行队列的长度(等待运行的进程数)

plist-sz:进程列表中进程(processes)和线程(threads)的数量

ldavg-1:最后1分钟的系统平均负载(System load average)

ldavg-5:过去5分钟的系统平均负载

ldavg-15:过去15分钟的系统平均负载

blocked:当前阻塞的任务数,等待I / O完成

示例七:系统交换活动信息监控

每5秒采样一次,连续采样3次,监控系统交换活动信息

[root@wjq ~]# sar -W 5 3
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:43:17 AM pswpin/s pswpout/s
11:43:22 AM 0.00 0.00
11:43:27 AM 0.00 0.00
11:43:32 AM 0.00 0.00
Average: 0.00 0.00

说明:

pswpin/s:每秒系统换入的交换页面(swap page)数量

pswpout/s:每秒系统换出的交换页面(swap page)数量

示例八:设备使用情况监控

每5秒采样一次,连续采样3次,报告设备使用情况

[root@wjq ~]# sar -d 5 3
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:44:43 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
11:44:48 AM dev11-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:44:48 AM dev8-0 0.82 0.00 26.18 32.00 0.00 0.00 0.00 0.00
11:44:48 AM dev253-0 0.82 0.00 26.18 32.00 0.00 0.00 0.00 0.00
11:44:48 AM dev253-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:44:48 AM dev253-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

11:44:48 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
11:44:53 AM dev11-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:44:53 AM dev8-0 0.81 0.00 26.07 32.00 0.00 0.50 0.50 0.04
11:44:53 AM dev253-0 0.81 0.00 26.07 32.00 0.00 0.50 0.50 0.04
11:44:53 AM dev253-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:44:53 AM dev253-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

11:44:53 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
11:44:58 AM dev11-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:44:58 AM dev8-0 0.41 0.00 13.03 32.00 0.00 0.50 0.50 0.02
11:44:58 AM dev253-0 0.41 0.00 13.03 32.00 0.00 0.50 0.50 0.02
11:44:58 AM dev253-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:44:58 AM dev253-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Average: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
Average: dev11-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev8-0 0.68 0.00 21.75 32.00 0.00 0.30 0.30 0.02
Average: dev253-0 0.68 0.00 21.75 32.00 0.00 0.30 0.30 0.02
Average: dev253-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev253-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

[root@wjq ~]# sar -d 5 3 -p
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

11:45:06 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
11:45:11 AM sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:45:11 AM sda 0.81 0.00 26.07 32.00 0.00 0.50 0.50 0.04
11:45:11 AM cl-root 0.81 0.00 26.07 32.00 0.00 0.50 0.50 0.04
11:45:11 AM cl-swap 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:45:11 AM cl-home 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

11:45:11 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
11:45:16 AM sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:45:16 AM sda 0.61 0.00 14.49 23.67 0.00 0.33 0.33 0.02
11:45:16 AM cl-root 0.61 0.00 14.49 23.67 0.00 0.33 0.33 0.02
11:45:16 AM cl-swap 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:45:16 AM cl-home 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

11:45:16 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
11:45:21 AM sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:45:21 AM sda 0.81 0.00 26.02 32.00 0.00 0.25 0.25 0.02
11:45:21 AM cl-root 0.81 0.00 26.02 32.00 0.00 0.25 0.25 0.02
11:45:21 AM cl-swap 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
11:45:21 AM cl-home 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Average: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
Average: sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: sda 0.75 0.00 22.20 29.73 0.00 0.36 0.36 0.03
Average: cl-root 0.75 0.00 22.20 29.73 0.00 0.36 0.36 0.03
Average: cl-swap 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: cl-home 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

说明:

参数-p可以打印出sda,hdc等磁盘设备名称,如果不用参数-p,设备节点则有可能是dev8-0,dev22-0

tps:每秒从物理磁盘I/O的次数.多个逻辑请求会被合并为一个I/O磁盘请求,一次传输的大小是不确定的.

rd_sec/s:每秒读扇区的次数.

wr_sec/s:每秒写扇区的次数.

avgrq-sz:平均每次设备I/O操作的数据大小(扇区).

avgqu-sz:磁盘请求队列的平均长度.

await:从请求磁盘操作到系统完成处理,每次请求的平均消耗时间,包括请求队列等待时间,单位是毫秒(1秒=1000毫秒).

svctm:系统处理每次请求的平均时间,不包括在请求队列中消耗的时间.

%util:I/O请求占CPU的百分比,比率越大,说明越饱和.

注意:

1. avgqu-sz 的值较低时,设备的利用率较高。

2. 当%util的值接近 1% 时,表示设备带宽已经占满。

示例九:网络接口的统计信息

每5秒采样一次,连续采样3次,报告设备使用情况

[root@wjq ~]# sar 5 3 -n DEV
Linux 3.10.0-514.el7.x86_64 (wjq.comsys.com) 10/30/2017 _x86_64_ (1 CPU)

12:07:51 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
12:07:56 PM lo 0.82 0.82 0.05 0.05 0.00 0.00 0.00
12:07:56 PM virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
12:07:56 PM virbr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
12:07:56 PM ens160 0.41 0.20 0.06 0.04 0.00 0.00 0.00

12:07:56 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
12:08:01 PM lo 0.82 0.82 0.05 0.05 0.00 0.00 0.00
12:08:01 PM virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
12:08:01 PM virbr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
12:08:01 PM ens160 7.17 0.20 0.63 0.12 0.00 0.00 0.00

12:08:01 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
12:08:06 PM lo 1.43 1.43 0.26 0.26 0.00 0.00 0.00
12:08:06 PM virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
12:08:06 PM virbr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
12:08:06 PM ens160 0.82 0.20 0.07 0.12 0.00 0.00 0.00

Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
Average: lo 1.02 1.02 0.12 0.12 0.00 0.00 0.00
Average: virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: virbr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: ens160 2.79 0.20 0.25 0.10 0.00 0.00 0.00

说明:

Possible keywords are DEV, EDEV, NFS, NFSD, SOCK, IP, EIP, ICMP, EICMP, TCP, ETCP, UDP, SOCK6, IP6,EIP6, ICMP6, EICMP6 and UDP6

IFACE:报告统计信息的网络接口的名称

rxpck/s:每秒接收的数据包总数

txpck/s:每秒传输的报文总数

rxkB/s:每秒接收的千字节总数

txkB/s:每秒传输的总千字节数

rxcmp/s:每秒接收的压缩数据包数

txcmp/s:每秒传输的压缩包数

rxmcst/s:每秒接收的组播数据包数

4、运维拓展:

要判断系统瓶颈问题,有时需几个 sar 命令选项结合起来

(1)怀疑CPU存在瓶颈,可用 sar -u 和 sar -q 等来查看

(2)怀疑内存存在瓶颈,可用 sar -B、sar -r 和 sar -W 等来查看

(3)怀疑I/O存在瓶颈,可用 sar -b、sar -u 和 sar -d 等来查看


"Linux系统中sar命令的用法"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

内存 系统 设备 时间 状态 监控 百分 百分比 示例 命令 报告 数据 磁盘 进程 信息 情况 数量 队列 字节 文件 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络科技有限互联网 万易互联网科技有限公司 剑昆互联网络科技有限公司临桂 青岛科技大学互联网大赛研究生 乌苏新华互联网科技做什么的 中国互联网公司排名锤子科技 互联网数据科技专业 互联网科技公司营业执照怎么办理 互联网第三次科技革命特征 小米互联网科技园入驻 互联网科技实习生岗位 张召忠谈中国互联网科技 有人说阿里系是互联网科技企业 卡尔迅互联网科技有限公司 35岁以上互联网科技行业 广东鹅鹅鹅互联网科技有限公司 中国科技和美国互联网 求路客互联网科技电话 互联网科技创新创业项目 山东亿川互联网科技有限责任公司 互联网科技公司起名 互联网科技行业发展 麻工互联网科技 唐信互联网科技 北京禾田雨橡互联网科技 科技互联网创业计划书 互联网科技包装股份有限公司上市 湖北辰鑫科技互联网 互联网科技的前景 互联网科技企业文化
0