shell入門系列(六)vmstat

  • 2019 年 10 月 5 日
  • 筆記

版權聲明:本文為部落客原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。

本文鏈接:https://blog.csdn.net/qq_37933685/article/details/86146032

文章目錄

  • shell入門系列( 六 )vmstat
    • 簡介
    • 入門小案例
      • 每列的意義
      • 1. 列出活動和非活動的記憶體
      • 2. 每X秒執行vmstat,共執行N次
      • 3. 帶時間戳的vmstat命令
      • 4. 統計各種計數器
      • 5. 磁碟統計資訊
      • 6. 以MB為單位輸出統計資訊
    • 參考文章
    • 我的主頁

shell入門系列( 六 )vmstat

簡介

這是Linux命令和性能監控系列的一部分。vmstat和iostat兩個命令都適用於所有主要的類unix系統(Linux/unix/FreeBSD/Solaris)

如果vmstat和iostat命令在你的系統中不可用,請安裝sysstat軟體包。vmstat,sar和iostat命令都包含在sysstat(系統監控工具)軟體包中。iostat命令生成CPU和所有設備的統計資訊。你可以從這個連接中下載源程式碼包編譯安裝sysstat,但是我們建議通過命令進行安裝;

入門小案例

每列的意義

常用的:

Free – 空閑的記憶體空間

si – 每秒從磁碟中交換進記憶體的數據量(以KB為單位)。

so – 每秒從記憶體中交換出磁碟的數據量(以KB為單位)。

具體的:

建議使用man vmstat 查看具體,vmstat 分模式分欄位的,下面是vm模式下的

proc: ​ r:可運行進程的數量(正在運行或等待運行時)。

b:不間斷睡眠中的進程數。

memory:

swpd:使用的虛擬記憶體量。

free:空閑記憶體量。

buff:用作緩衝區的記憶體量。

cache:用作快取的記憶體量。

inact:非活動記憶體量。 (-a選項)

active:活動記憶體量。 (-a選項)

io:

bi:從塊設備接收的塊(塊/ s)。

bo:發送到塊設備的塊(塊/ s)。

system:

in:每秒的中斷數,包括時鐘。

cs:每秒上下文切換次數。

CPU:

us:運行非內核程式碼所花費的時間。 (用戶時間,包括美好時光)

sy:運行內核程式碼所花費的時間。 (系統時間)

id:空閑時間。 在Linux 2.5.41之前,這包括IO等待時間。

wa:等待IO的時間。 在Linux 2.5.41之前,包含在空閑狀態。

st:從虛擬機中竊取的時間。 在Linux 2.6.11之前,未知。

1. 列出活動和非活動的記憶體

vmstat -a 

效果

2. 每X秒執行vmstat,共執行N次

vmstat 2 6 每2秒執行一次,執行6次

vmstat 2 3

效果

3. 帶時間戳的vmstat命令

帶-t參數執行vmstat命令,該命令將會在每一行輸出後都帶一個時間戳

vmstat -t 2 3

效果

4. 統計各種計數器

vmstat命令的-s參數,將輸出各種事件計數器和記憶體的統計資訊。

vmstat -s

效果

5. 磁碟統計資訊

vmstat的-d參數將會輸出所有磁碟的統計資訊。

vmstat -d

效果

6. 以MB為單位輸出統計資訊

vmstat的-S和-M參數(大寫和MB)將會以MB為單位輸出。vmstat默認以KB為單位輸出統計資訊。

vmstat	-S M 2 3

效果

參考文章

系統運維

我的主頁