Linux sar命令有什麼用

sar命令是系統維護的重要工具,可以幫助我們掌握系統資源的使用情況,今天小編就給大家介紹下Linux系統中的sar命令,一起來了解下吧。更多內容請關注應屆畢業生網!

Linux sar命令有什麼用

  sar命令常用格式

sar [options] [-A] [-o file] t [n]

其中:

t爲採樣間隔,n爲採樣次數,默認值是1;

-o file表示將命令結果以二進制格式存放在文件中,file 是文件名。

options 爲命令行選項,sar命令常用選項如下:

-A:所有報告的總和

-u:輸出CPU使用情況的統計信息

-v:輸出inode、文件和其他內核表的統計信息

-d:輸出每一個塊設備的活動信息

-r:輸出內存和交換空間的統計信息

-b:顯示I/O和傳送速率的統計信息

-a:文件讀寫情況

-c:輸出進程統計信息,每秒創建的進程數

-R:輸出內存頁面的統計信息

-y:終端設備活動情況

-w:輸出系統交換活動信息

  1. CPU資源監控

例如,每10秒採樣一次,連續採樣3次,觀察CPU 的使用情況,並將採樣結果以二進制形式存入當前目錄下的文件test中,需鍵入如下命令:

sar -u -o test 10 3

屏幕顯示如下:

17:06:16 CPU %user %nice %system %iowait %steal %idle

17:06:26 all 0.00 0.00 0.20 0.00 0.00 99.80

17:06:36 all 0.00 0.00 0.20 0.00 0.00 99.80

17:06:46 all 0.00 0.00 0.10 0.00 0.00 99.90

Average: all 0.00 0.00 0.17 0.00 0.00 99.83

輸出項說明:

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 。

如果要查看二進制文件test中的內容,需鍵入如下sar命令:

sar -u -f test

  2. inode、文件和其他內核表監控

例如,每10秒採樣一次,連續採樣3次,觀察覈心表的狀態,需鍵入如下命令:

sar -v 10 3

屏幕顯示如下:

17:10:49 dentunusd file-nr inode-nr pty-nr

17:10:59 6301 5664 12037 4

17:11:09 6301 5664 12037 4

17:11:19 6301 5664 12037 4

Average: 6301 5664 12037 4

輸出項說明:

dentunusd:目錄高速緩存中未被使用的條目數量

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

inode-nr:索引節點句柄(inode handle)的使用數量

pty-nr:使用的pty數量

  3. 內存和交換空間監控

例如,每10秒採樣一次,連續採樣3次,監控內存分頁:

sar -r 10 3

屏幕顯示如下:

輸出項說明:

kbmemfree:這個值和free命令中的free值基本一致,所以它不包括buffer和cache的空間。

kbmemused:這個值和free命令中的used值基本一致,所以它包括buffer和cache的空間。

%memused:這個值是kbmemused和內存總量(不包括swap)的一個百分比。

kbbuffers和kbcached:這兩個值就是free命令中的buffer和cache.

kbcommit:保證當前系統所需要的內存,即爲了確保不溢出而需要的內存(RAM+swap)。

%commit:這個值是kbcommit與內存總量(包括swap)的一個百分比。