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