vmstat — 顯示虛擬記憶體與系統統計

顯示虛擬記憶體、CPU、I/O 等系統資源的即時統計。

語法

vmstat [選項] [延遲 [次數]]

常用選項

選項 說明 範例
延遲 次數 每隔 N 秒更新,共更新 M 次(不加次數則持續) vmstat 2 5
-a 顯示 active/inactive 記憶體 vmstat -a
-s 顯示統計摘要(累計值) vmstat -s
-d 顯示磁碟 I/O 統計 vmstat -d
-p 分割區 顯示指定磁碟分割區的統計 vmstat -p sda1
-t 在每行加上時間戳記 vmstat -t 2
-w 寬格式輸出(更多空間顯示數字) vmstat -w

使用範例

範例 1:基本系統狀態快照

輸出各欄說明: r=執行佇列, b=阻塞程序, swpd=Swap使用, free=可用記憶體 buff=buffer, cache=快取, si/so=Swap進/出, bi/bo=磁碟讀/寫 in=中斷/秒, cs=內容切換/秒, us/sy/id/wa=CPU使用率

$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 512640  89312 3214208    0    0     4    12  234  523  2  1 97  0  0
範例 2:每 2 秒更新,共 5 次

持續監控系統狀態,第一行是開機後的平均值,後續行才是即時值。

$ vmstat 2 5
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   ...
 0  0      0 512640  ...   (第 1-5 行,每 2 秒更新)
範例 3:確認系統是否使用 Swap

si(swap in)和 so(swap out)若持續不為零,表示 RAM 不足正在頻繁 swap。

$ vmstat 1 10 | awk "NR>2 {print \"si:\"\$7\" so:\"\$8\"\"}"
si:0 so:0
si:0 so:0

延伸閱讀