115 lines
3.2 KiB
Markdown
115 lines
3.2 KiB
Markdown
sar
|
||
===
|
||
|
||
系统运行状态统计工具
|
||
|
||
## 补充说明
|
||
|
||
**sar命令** 是Linux下系统运行状态统计工具,它将指定的操作系统状态计数器显示到标准输出设备。sar工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态。它的特点是可以连续对系统取样,获得大量的取样数据。取样数据和分析的结果都可以存入文件,使用它时消耗的系统资源很小。
|
||
|
||
### 语法
|
||
|
||
```shell
|
||
sar(选项)(参数)
|
||
```
|
||
|
||
### 选项
|
||
|
||
```shell
|
||
-A: 显示所有的报告信息;
|
||
-b: 显示I/O速率;
|
||
-B: 显示换页状态;
|
||
-c: 显示进程创建活动;
|
||
-d: 显示每个块设备的状态;
|
||
-e: 设置显示报告的结束时间;
|
||
-f: 从指定文件提取报告;
|
||
-i: 设状态信息刷新的间隔时间;
|
||
-n: 报告网络统计信息。
|
||
-P: 报告每个CPU的状态;
|
||
-R: 显示内存状态;
|
||
-u: 显示CPU利用率;
|
||
-v: 显示索引节点,文件和其他内核表的状态;
|
||
-w: 显示交换分区状态;
|
||
-x: 显示给定进程的状态。
|
||
```
|
||
|
||
```shell
|
||
-r: 以分页方式显示输出,每页最多显示 100 行。
|
||
-o: 输出选项,指定要显示的列。例如,`-o mrk,prt,cvg` 将显示 CPU 使用率、进程标识符、磁盘使用率 和 网络流量。
|
||
-t: 时间戳选项,指定要在输出中添加时间戳。
|
||
-s: 统计选项,指定要显示的统计数据的类型。例如,`-s us,ms` 将显示 CPU 使用率的 us 和 ms 时间段的平均值。
|
||
-c: 选项用于指定要发送的命令。例如,`-c ls` 将显示当前目录中的文件和子目录列表。
|
||
```
|
||
|
||
### 参数
|
||
|
||
* 间隔时间:每次报告的间隔时间(秒);
|
||
* 次数:显示报告的次数。
|
||
|
||
### 实例
|
||
|
||
**察看内存和交换空间的使用率:**
|
||
|
||
```shell
|
||
sar -r
|
||
Linux 2.4.20-8 (www.jsdig.com) 20130503
|
||
12:00:01 AM kbmemfree kbmemused %memused
|
||
kbmemshrd kbbuffers kbcached
|
||
12:10:00 AM 240468 1048252 81.34
|
||
0 133724 485772
|
||
12:20:00 AM 240508 1048212 81.34
|
||
0 134172 485600
|
||
…
|
||
08:40:00 PM 934132 354588 27.51
|
||
0 26080 185364
|
||
Average: 324346 964374 74.83
|
||
0 96072 467559
|
||
```
|
||
|
||
kbmemfree与kbmemused字段分别显示内存的未使用与已使用空间,后面跟着的是已使用空间的百分比(%memused字段)。kbbuffers与kbcached字段分别显示缓冲区与系统全域的数据存取量,单位为KB。
|
||
|
||
**观察系统部件10分钟,并对数据进行排序:**
|
||
|
||
```shell
|
||
sar -o temp 60 10
|
||
```
|
||
|
||
**显示保存在每日数据文件“sa16”中的内存和网络统计信息。**
|
||
|
||
```shell
|
||
sar -r -n DEV -f /var/log/sa/sa16
|
||
```
|
||
|
||
**查看 CPU 使用率:**
|
||
|
||
```shell
|
||
sar -t
|
||
```
|
||
|
||
**查看磁盘使用率:**
|
||
|
||
```shell
|
||
sar -s disk
|
||
```
|
||
|
||
**查看网络流量:**
|
||
|
||
```shell
|
||
sar -s nic
|
||
```
|
||
|
||
**发送命令到系统服务:**
|
||
|
||
```shell
|
||
sar -c ls
|
||
```
|
||
|
||
**显示系统当前时间戳:**
|
||
|
||
```shell
|
||
sar -t +%s
|
||
```
|
||
|
||
这些只是 `sar` 命令的一些示例,您可以根据具体需求选择不同的选项和参数。
|
||
|
||
注意: `sar` 命令的输出结果可能会因为系统性能的不同而有所不同。如果要获得更准确的结果,请考虑在系统性能最佳的时候进行监控。 |