sar 指令很強大,是分析系統效能的重要工具之一,透過該指令可以全面地取得系統的CPU、運行佇列、磁碟讀寫(I/O)、分割區(交換區)、記憶體、CPU中斷和網路等效能數據。
sar 指令的基本格式如下:
[root@localhost ~]# sar [options] [-o filename] interval [count]
此指令格式中,各參數的意義如下:
sar指令選項 | 功能 |
---|---|
-A | 顯示系統所有資源設備(CPU、記憶體、磁碟)的運作狀況。 |
-u | 顯示系統所有 CPU 在採樣時間內的負載狀態。 |
-P | 顯示目前系統中指定 CPU 的使用情況。 |
-d | 顯示系統所有硬碟設備在採樣時間內的使用狀態。 |
-r | 顯示系統內存在採樣時間內的使用情況。 |
-b | 顯示緩衝區在取樣時間內的使用情況。 |
-v | 顯示 inode 節點、檔案和其他內核表的統計資料。 |
-n | 顯示網路運作狀態,此選項後可接DEV(顯示網路介面資訊)、EDEV(顯示網路錯誤的統計資料)、SOCK(顯示套接字資訊)和FULL(等同於使用DEV、EDEV和SOCK )等,有關更多的選項,可透過執行man sar 指令查看。 |
-q | 顯示運行清單中的進程數、進程大小、系統平均負載等。 |
-R | 顯示進程在採樣時的活動情況。 |
-y | 顯示終端設備在採樣時間的活動情況。 |
-w | 顯示系統交換活動在取樣時間內的狀態。 |
有關 sar 指令更多可用的選項及功能,可透過執行 man sar 指令查看。
【例 1】
如果想要查看系統 CPU 的整理負載狀況,每 3 秒統計一次,統計 5 次,可以執行以下指令:
[root@localhost ~]# sar -u 3 5 Linux 2.6.32-431.el6.x86_64 (localhost) 10/25/2019 _x86_64_(1 CPU) 06:18:23 AM CPU %user %nice %system %iowait%steal %idle 06:18:26 AM all 12.110.002.773.110.00 82.01 06:18:29 AM all6.550.002.070.000.00 91.38 06:18:32 AM all6.600.002.080.000.00 91.32 06:18:35 AM all 10.210.001.760.000.00 88.03 06:18:38 AM all8.710.001.740.000.00 89.55 Average:all8.830.002.090.630.00 88.46
此輸出結果中,各個列表項目的意義分別如下:
【例 2】
如果想要查看系統磁碟的讀寫效能,可執行以下命令:
[root@localhost ~]# sar -d 3 5 Linux 2.6.32-431.el6.x86_64 (localhost) 10/25/2019 _x86_64_(1 CPU) 06:36:52 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util 06:36:55 AMdev8-03.380.00502.26148.440.08 24.114.561.54 06:36:55 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util 06:36:58 AMdev8-01.490.00 29.85 20.000.001.750.750.11 06:36:58 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util 06:37:01 AMdev8-0 68.266.9653982.61790.933.22 47.233.54 24.17 06:37:01 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util 06:37:04 AMdev8-0111.69 3961.29154.84 36.851.059.423.44 38.43 06:37:04 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util 06:37:07 AMdev8-01.67136.002.67 83.200.016.206.001.00 Average:DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util Average: dev8-0 34.45781.10 9601.22301.360.78 22.743.50 12.07
此輸出結果中,各個列表頭的意義如下:
除此之外,如果想要查看系統記憶體使用情況,可以執行sar -r 5 3指令;如果要查看網路運作狀態,可執行sar -n DEV 5 3指令,等等。有關其它參數的用法,這裡不再給出具體實例,有興趣的讀者可自行測試,觀察運行結果。
以上是Linux sar指令詳解之分析系統效能案例的詳細內容。更多資訊請關注PHP中文網其他相關文章!