成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

vmstat:一個標準的報告Linux系統虛擬內存統計工具

系統 Linux 系統運維
vmstat 是一個標準的工具,它會報告 Linux 系統的虛擬內存統計。vmstat 會報告有關進程、內存、分頁、塊 IO、陷阱(中斷)和 cpu 活動的信息。它可以幫助 Linux 管理員在解決問題時識別系統瓶頸。

[[182579]]

什么是 RAM?

在智能手機世界,我們每一個人都知道 RAM。因此,我不想深入介紹,這樣我就簡要概括下。RAM 代表“隨機訪問內存(Random Access Memory)”,是一種計算機數據存儲,它會存儲經常使用的程序來提升系統性能。

什么是虛擬內存?

虛擬內存是一種內存管理方式,計算機通過臨時將最近未使用的程序數據從 RAM 轉移到硬盤,以平衡或管理內存的短缺。

什么是 vmstat?

vmstat 是一個標準的工具,它會報告 Linux 系統的虛擬內存統計。vmstat 會報告有關進程、內存、分頁、塊 IO、陷阱(中斷)和 cpu 活動的信息。它可以幫助 Linux 管理員在解決問題時識別系統瓶頸。

在 Linux 中安裝 Sysstat

Linux 中沒有獨立的 vmstat 包。它與 sysstat 綁定在一起,并在大多數發行版的默認倉庫上都有。如果還沒有安裝,只要基于你的發行版輸入下面的命令。

  1. [在 CentOS/RHEL 中安裝 vmstat] 
  2. $ sudo yum install sysstat 
  3. [在 Fedora 中安裝 vmstat] 
  4. $ sudo dnf install sysstat 
  5. [在 Debian/Ubuntu 中安裝 vmstat] 
  6. $ sudo apt-get install sysstat 
  7. [在 Arch Linux 中安裝 vmstat] 
  8. $ sudo pacman -S sysstat 
  9. [在 Mageia 中安裝 vmstat] 
  10. $ sudo urpmi sysstat 
  11. [在 openSUSE 中安裝 vmstat] 
  12. $ sudo zypper install sysstat 

不帶參數運行 vmstat

假設你已經成功安裝 vmstat,在終端中不帶參數運行 vmstat,它會向你展示 vmstat 的默認結果。

  1. # vmstat 
  2. procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- 
  3.  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa 
  4.  2  0  79496 1614120 139240 787928   0    0    23    10    0    0 11  1 88  0 

當你看到上面的輸出,你可能已經大致了解了它是什么以及它的目的。不要擔心,我們將深入解釋每個參數,以便你可以了解 vmstat 的用途和目的。

procs:procs 中有 r 和 b 列,它報告進程統計信息。在上面的輸出中,在運行隊列(r)中有兩個進程在等待 CPU 并有零個休眠進程(b)。通常,它不應該超過處理器(或核心)的數量,如果你發現異常,最好使用 top 命令進一步地排除故障。

  • r:等待運行的進程數。
  • b:休眠狀態下的進程數。

memory: memory 下有報告內存統計的 swpd、free、buff 和 cache 列。你可以用 free -m 命令看到同樣的信息。在上面的內存統計中,統計數據以千字節表示,這有點難以理解,最好添加 M 參數來看到以兆字節為單位的統計數據。

  • swpd:使用的虛擬內存量。
  • free:空閑內存量。
  • buff:用作緩沖區的內存量。
  • cache:用作高速緩存的內存量。
  • inact:非活動內存的數量。
  • active:活動內存量。

swap:swap 有 si 和 so 列,用于報告交換內存統計信息。你可以用 free -m 命令看到相同的信息。

  • si:從磁盤交換的內存量(換入,從 swap 移到實際內存的內存)。
  • so:交換到磁盤的內存量(換出,從實際內存移動到 swap 的內存)。

I/O:I/O 有 bi 和 bo 列,它以“塊讀取”和“塊寫入”的單位來報告每秒磁盤讀取和寫入的塊的統計信息。如果你發現有巨大的 I/O 讀寫,最好使用 iotop 和 iostat 命令來查看。

  • bi:從塊設備接收的塊數。
  • bo:發送到塊設備的塊數。

system:system 有 in 和 cs 列,它報告每秒的系統操作。

  • in:每秒的系統中斷數,包括時鐘中斷。
  • cs:系統為了處理所以任務而上下文切換的數量。

CPU:CPU 有 us、sy、id 和 wa 列,報告(所用的) CPU 資源占總 CPU 時間的百分比。如果你發現異常,最好使用 top 和 free 命令。

  • us:處理器在非內核程序消耗的時間。
  • sy:處理器在內核相關任務上消耗的時間。
  • id:處理器的空閑時間。
  • wa:處理器在等待IO操作完成以繼續處理任務上的時間。

以 MB 方式輸出

默認情況下,vmstat 以千字節為單位顯示內存統計,這是非常難以理解的,最好添加 -S m 參數以獲取以兆字節為單位的統計。

  1. # vmstat -S m 
  2. procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- 
  3.  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa 
  4.  1  0    103    371    406   2116    0    0    40    15    0    0 11  1 87  0 

以延遲方式運行 vmstat 獲取更好的統計信息

默認情況下,vmstat 的單次統計信息不足以進一步進行故障排除,因此,添加更新延遲(延遲是更新之間的延遲,以秒為單位)以定期捕獲活動。如果你想以 2 秒延遲運行 vmstat ,只需使用下面的命令(如果你想要更長的延遲,你可以根據你的愿望改變)。

以下命令將每 2 秒運行一次,直到退出。

  1. # vmstat 2 
  2. procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- 
  3.  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa 
  4.  1  0 105500 325776 416016 2166912   0    0    40    15    0    0 11  1 87  0 
  5.  0  0 105500 325644 416016 2166920   0    0     0    13 1083 1174 11  1 87  0 
  6.  0  0 105500 308648 416024 2166928   0    0     1    16 1559 1453 16  2 82  0 
  7.  0  0 105500 285948 416032 2166932   0    0     0    12  934 1003  9  1 90  0 
  8.  0  0 105500 326620 416040 2166940   0    0     1    27  922 1068  9  1 90  0 
  9.  0  0 105500 366704 416048 2166944   0    0     0    17  835  955  9  1 90  0 
  10.  0  0 105500 366456 416056 2166948   0    0     1    22  859  918  9  1 90  0 
  11.  0  0 105500 366456 416056 2166948   0    0     0    15 1539 1504 17  2 81  0 
  12.  0  0 105500 365224 416060 2166996   0    0     1    19  984 1097 11  1 88  0 

帶延遲和計數運行 vmstat

或者,你可以帶延遲和特定計數運行 vmstat,一旦達到給定的計數,然后自動退出。

以下命令將每 2 秒運行一次,10 次后自動退出。

  1. # vmstat 2 10 
  2. procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- 
  3.  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa 
  4.  1  0  79496 1581916 157380 810412   0    0    23    10    0    1 11  1 88  0 
  5.  2  0  79496 1559464 157380 810416   0    0     1     1 1821 1749 21  2 77  0 
  6.  0  0  79496 1583768 157384 810416   0    0     1    46  681  799  9  1 90  0 
  7.  2  0  79496 1556364 157384 810428   0    0     1     1 1392 1545 15  2 83  0 
  8.  0  0  79496 1583272 157384 810428   0    0     1     0 1307 1448 14  2 84  0 
  9.  2  0  79496 1582032 157384 810428   0    0     1    41  424  605  4  1 96  0 
  10.  1  0  79496 1575848 157384 810428   0    0     1     0 1912 2407 26  2 71  0 
  11.  0  0  79496 1582884 157384 810436   0    0     1    69  678  825  9  1 90  0 
  12.  2  0  79496 1569368 157392 810432   0    0    11    26  920  969  9  1 90  0 
  13.  1  0  79496 1583612 157400 810444   0    0     7    39 2001 2530 20  2 77  0 

顯示活動和非活動內存

默認情況下,vmstat 會顯示除活動和非活動內存之外的內存統計信息。如果要查看活動和非活動內存統計信息,請在 vmstat 后添加 -a 參數。

  1. # vmstat -a 
  2. procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- 
  3.  r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa 
  4.  1  0 105500 2387592 415148 584112   0    0    40    15    0    1 11  1 87  0 

打印磁盤統計

在 vmstat 后面添加 -d 參數會以每個磁盤一行的方式顯示統計(包含讀、寫和 IO)。

  1. # vmstat -d 
  2. disk- ------------reads------------ ------------writes----------- -----IO------ 
  3.        total merged sectors      ms  total merged sectors      ms    cur    sec 
  4. ram0       0      0       0       0      0      0       0       0      0      0 
  5. ram1       0      0       0       0      0      0       0       0      0      0 
  6. ram2       0      0       0       0      0      0       0       0      0      0 
  7. ram3       0      0       0       0      0      0       0       0      0      0 
  8. ram4       0      0       0       0      0      0       0       0      0      0 
  9. ram5       0      0       0       0      0      0       0       0      0      0 
  10. ram6       0      0       0       0      0      0       0       0      0      0 
  11. ram7       0      0       0       0      0      0       0       0      0      0 
  12. ram8       0      0       0       0      0      0       0       0      0      0 
  13. ram9       0      0       0       0      0      0       0       0      0      0 
  14. ram10      0      0       0       0      0      0       0       0      0      0 
  15. ram11      0      0       0       0      0      0       0       0      0      0 
  16. ram12      0      0       0       0      0      0       0       0      0      0 
  17. ram13      0      0       0       0      0      0       0       0      0      0 
  18. ram14      0      0       0       0      0      0       0       0      0      0 
  19. ram15      0      0       0       0      0      0       0       0      0      0 
  20. loop0      0      0       0       0      0      0       0       0      0      0 
  21. loop1      0      0       0       0      0      0       0       0      0      0 
  22. loop2      0      0       0       0      0      0       0       0      0      0 
  23. loop3      0      0       0       0      0      0       0       0      0      0 
  24. loop4      0      0       0       0      0      0       0       0      0      0 
  25. loop5      0      0       0       0      0      0       0       0      0      0 
  26. loop6      0      0       0       0      0      0       0       0      0      0 
  27. loop7      0      0       0       0      0      0       0       0      0      0 
  28. fd0        0      0       0       0      0      0       0       0      0      0 
  29. sda   16604050 904497 2594882190 57455732 30037054 28093770 2160032056 118189160      0  40915 
  30. sdb   257357577 479985 3124712204 577235320 8502519 1283237 36645890 11250948      0 182336 

總結磁盤統計

在 vmstat 后面添加 -D 會顯示全局統計(包括全部的磁盤、分區、全部讀、合并的讀、讀取的扇區、寫、合并的寫、寫入的扇區和 IO)。

  1. # vmstat -D 
  2.            27 disks 
  3.             3 partitions 
  4.     275754028 total reads 
  5.       1388030 merged reads 
  6.    5751195976 read sectors 
  7.     638710116 milli reading 
  8.      38795040 writes 
  9.      29520659 merged writes 
  10.    2209820333 written sectors 
  11.     130210652 milli writing 
  12.             0 inprogress IO 
  13.        224704 milli spent IO 

打印指定分區統計

vmstat 添加 -p 參數后面跟上設備名會顯示指定分區統計(包括讀、讀取的扇區、寫以及請求的寫)。

  1. # vmstat -p /dev/sdb1 
  2. sdb1          reads   read sectors  writes    requested writes 
  3.                 3115      27890     839453  206728016 

vmstat 統計信息帶上時間戳

當你想在特定時間區間內找到內存尖峰時,用 vmstat 命令添加 -t 參數,后跟延遲和計數。

注意:此組合不適用于基于 Debian 的系統。

  1. # vmstat -t 1 5 
  2. procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ ---timestamp--- 
  3.  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st 
  4.  0  0      0 6981416 181324 24588604    0    0     0     1    0    0  0  0 100  0  0    2017-01-11 15:42:15 MST 
  5.  2  0      0 6981276 181324 24588604    0    0     0     0   91   40  0  0 100  0  0    2017-01-11 15:42:16 MST 
  6.  0  0      0 6982016 181324 24588604    0    0     0     0   75  116  0  0 100  0  0    2017-01-11 15:42:17 MST 
  7.  0  0      0 6982016 181324 24588604    0    0     0     0   43   39  0  0 100  0  0    2017-01-11 15:42:18 MST 
  8.  0  0      0 6982280 181324 24588604    0    0     0     0  113  185  0  0 100  0  0    2017-01-11 15:42:19 MST 

打印更多統計

vmstat 后面跟上 -s 參數會顯示不同統計的總結。

  1. # vmstat -s 
  2.      32849392  total memory 
  3.      25864128  used memory 
  4.      16468180  active memory 
  5.       8320888  inactive memory 
  6.       6985264  free memory 
  7.        181324  buffer memory 
  8.      24588612  swap cache 
  9.      20970492  total swap 
  10.             0  used swap 
  11.      20970492  free swap 
  12.        891075 non-nice user cpu ticks 
  13.          6532 nice user cpu ticks 
  14.       1507099 system cpu ticks 
  15.   18925265601 idle cpu ticks 
  16.        113043 IO-wait cpu ticks 
  17.           108 IRQ cpu ticks 
  18.          4185 softirq cpu ticks 
  19.             0 stolen cpu ticks 
  20.       4071862 pages paged in 
  21.     216759718 pages paged out 
  22.             0 pages swapped in 
  23.             0 pages swapped out 
  24.     369611221 interrupts 
  25.     477861261 CPU context switches 
  26.    1478258826 boot time 
  27.       2196121 forks 

打印 slab 統計

vmstat 后面跟上 -m 參數會顯示 slab 信息。

  1. # vmstat -m 
  2. Cache                       Num  Total   Size  Pages 
  3. nf_conntrack_expect           0      0    240     16 
  4. nf_conntrack_ffffffff81b2a920     18     60    312     12 
  5. fib6_nodes                   24     59     64     59 
  6. ip6_dst_cache                16     30    384     10 
  7. ndisc_cache                   7     30    256     15 
  8. ip6_mrt_cache                 0      0    128     30 
  9. RAWv6                        35     35   1088      7 
  10. UDPLITEv6                     0      0   1024      4 
  11. UDPv6                         4     12   1024      4 
  12. tw_sock_TCPv6                 0      0    320     12 
  13. request_sock_TCPv6            0      0    192     20 
  14. TCPv6                         4      6   1920      2 
  15. fat_inode_cache               5      6    672      6 
  16. fat_cache                     0      0     32    112 
  17. ioat2                      4096   4140    128     30 
  18. ext4_inode_cache          34322  34364   1000      4 
  19. ext4_xattr                    0      0     88     44 

閱讀更多關于 vmstat

如果你想了解關于 vmstat 的更多選項,請閱讀手冊。

  1. # vmstat --help 
  2. 或者 
  3. # man vmstat 

作者簡介:

Magesh Maruthamuthu,熱愛玩所有的 Linux 發行版 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2014-01-14 10:52:06

Linux vmsta虛擬內存

2010-06-02 12:47:12

Linux 內存監控

2019-03-14 09:29:02

Linux系統內存

2019-03-20 14:29:46

Linux虛擬內存

2010-06-10 17:12:23

Linux 內存監控

2019-12-26 08:45:46

Linux虛擬內存

2020-04-14 16:03:31

Linux虛擬內存操作系統

2010-05-19 10:14:41

vmstatLinux系統監控工具

2012-08-24 10:47:33

Linux統計工具

2022-08-21 16:52:27

Linux虛擬內存

2022-08-02 09:02:17

虛擬內存操作系統

2021-06-01 08:20:55

Linux虛擬內存命令

2022-07-26 10:28:00

Linux監控命令

2010-06-02 11:33:26

Linux 內存監控

2025-04-09 05:22:00

2021-05-17 07:45:06

Linux系統程序

2009-02-03 09:29:00

虛擬化解決方案案例

2022-08-21 10:21:07

Linux虛擬內存

2022-10-24 08:48:07

虛擬內存Linux

2014-03-12 15:34:21

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品自在在线观看 | 91天堂网| 中文字幕一区二区三区四区五区 | 久久夜视频 | 成人午夜av | 精品自拍视频 | 91青青草视频| 日本久久久久久 | 国产女人第一次做爰毛片 | 一区二区av | 国产成人精品一区二区三区四区 | 久久久久国产一区二区三区四区 | 日韩二区 | 国产高清视频在线 | 中文字幕1区 | 欧美另类视频在线 | 日本午夜视频 | 久久国| 日韩欧美一区二区在线播放 | 中文字幕日韩一区 | 久久久夜夜夜 | 日韩一区在线观看视频 | 亚洲国产一区二区视频 | www.色.com | 日韩中文字幕 | 日韩成人免费视频 | 精品成人在线观看 | 91视视频在线观看入口直接观看 | 综合久久av| 午夜视频网站 | www.亚洲一区二区三区 | 日韩欧美视频 | 精品国产免费人成在线观看 | 欧美国产日本一区 | 国产精品伦一区二区三级视频 | 成人综合久久 | 亚洲看片网站 | 久久精品99 | 欧洲在线视频 | 欧洲性生活视频 | 91免费观看视频 |