显示行号

|

选择喜欢的代码风格

默认

GitHub

Dune

LakeSide

Plateau

Vibrant

Blue

Eighties

Tranquil

sar 命令系统运行状态统计工具,Sar是后台进程sadc的前端显示工具,安装名为“sysstat”的包后,sadc就会自动从内核收集报告并保存。

sar 命令安装:

-bash: sar: command not found

#Debian

apt-get install sysstat

#Ubuntu

apt-get install sysstat

sudo vi /etc/default/sysstat

修改

ENABLED=false

ENABLED=true

#重启服务

sudo service sysstat restart

#Alpine

apk add sysstat

#Arch Linux

pacman -S sysstat

#Kali Linux

apt-get install sysstat

#CentOS

yum install sysstat

systemctl start sysstat

systemctl enable sysstat

#Fedora

dnf install sysstat

#OS X

brew install sysstat

#Raspbian

apt-get install sysstat

#Docker

docker run cmd.cat/sar sar

sar 命令补充说明:

sar 命令是 Linux 下系统运行状态统计工具,它将指定的操作系统状态计数器显示到标准输出设备。sar 工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态。它的特点是可以连续对系统取样,获得大量的取样数据。取样数据和分析的结果都可以存入文件,使用它时消耗的系统资源很小。

sar 命令语法:

sar -[ options ] time_interval number_of_tines_to_display

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设备活动状况

sar 命令参数:

间隔时间:每次报告的间隔时间(秒);

次数:显示报告的次数。

sar 命令实例:

#察看内存和交换空间的使用率

$ sar -r

Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU)

08:58:03 AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty

08:58:05 AM 64624324 1184156 1.80 49892 430760 1056892 1.61 452264 228332 40

08:58:07 AM 64624092 1184388 1.80 49892 430772 1056892 1.61 452268 228344 56

08:58:09 AM 64624076 1184404 1.80 49892 430788 1056892 1.61 452284 228344 72

Average: 64624164 1184316 1.80 49892 430773 1056892 1.61 452272 228340 56

---------------

kbmemfree:空闲物理内存量;

kbmemused:使用中的物理内存量;

%memused:物理内存量使用率;

kbbuffers:内核中作为缓冲区使用的物理内存容量;

kbcacheed:内核中作为缓存使用的物理内存容量;

kbswpfree:交换区的空闲容量;

kbswpused:使用中的交换区容量;

kbmemfree与kbmemused字段分别显示内存的未使用与已使用空间,后面跟着的是已使用空间的百分比(%memused字段)。

kbbuffers与kbcached字段分别显示缓冲区与系统全域的数据存取量,单位为KB。

#观察系统部件10分钟,并对数据进行排序

[root@Test /home/commandnotfound]

$ sar -o temp 60 10

Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU)

12:23:38 PM CPU %user %nice %system %iowait %steal %idle

12:24:38 PM all 0.03 0.00 0.02 0.00 0.00 99.95

Average: all 0.03 0.00 0.02 0.00 0.00 99.95

#sar –u 查看CPU使用率

[root@Test /home/commandnotfound]

$ sar -u

Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU)

08:58:03 AM CPU %user %nice %system %iowait %steal %idle

08:58:05 AM all 0.00 0.00 0.03 0.00 0.00 99.97

08:58:07 AM all 0.03 0.00 0.00 0.00 0.00 99.97

08:58:09 AM all 0.00 0.00 0.03 0.00 0.00 99.97

Average: all 0.01 0.00 0.02 0.00 0.00 99.97

#sar –q 查看平均负荷

$ sar -q

Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU)

08:58:03 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked

08:58:05 AM 0 378 0.04 0.21 2.23 0

08:58:07 AM 0 378 0.04 0.21 2.21 0

08:58:09 AM 0 378 0.04 0.21 2.21 0

Average: 0 378 0.04 0.21 2.22 0

#sar –W 查看页面交换发生状况

$ sar -W

Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU)

08:58:03 AM pswpin/s pswpout/s

08:58:05 AM 0.00 0.00

08:58:07 AM 0.00 0.00

08:58:09 AM 0.00 0.00

Average: 0.00 0.00

#sar –q 查看平均负荷

$ sar -q

Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU)

08:58:03 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked

08:58:05 AM 0 378 0.04 0.21 2.23 0

08:58:07 AM 0 378 0.04 0.21 2.21 0

08:58:09 AM 0 378 0.04 0.21 2.21 0

Average: 0 378 0.04 0.21 2.22 0

#sar –b 查看I/O和传送速率的统计信息

$ sar -b 1 5

Linux 3.10.0-514.el7.x86_64 (redis-01) 03/26/2019 _x86_64_ (16 CPU)

12:36:12 PM tps rtps wtps bread/s bwrtn/s

12:36:13 PM 0.00 0.00 0.00 0.00 0.00

12:36:14 PM 0.00 0.00 0.00 0.00 0.00

12:36:15 PM 0.00 0.00 0.00 0.00 0.00

12:36:16 PM 0.00 0.00 0.00 0.00 0.00

12:36:17 PM 0.00 0.00 0.00 0.00 0.00

Average: 0.00 0.00 0.00 0.00 0.00

--------------

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

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

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

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

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

其他还有:

sar –c 每秒钟创建的进程数

sar -n DEV 输出网络设备状态的统计信息

sar 的坑:

安装首次执行#sar 命令时会提示如下错误。

Cannot open /var/log/sa/sa**: No such file or directory.. 星号值一般是当天的日期。这个错误是由于没有创建那个文件,可是使用参数-o 让其生成。

$ sar -o 2 3

这样/var/log/sa/目录下就会有文件了。

sar 命令扩展阅读:

sar 命令评论

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐