vmstatからメモリ使用率を%で取得する必要がありますが、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 139728 45396 199128 1236360 1 2 4 622 3 1 51 4 43 2 0
システムの総メモリ量はどれくらいですか?それは 'swpd' + 'free' + 'buff' + 'cache'で、合計は1620612ですか?
システムの空きメモリ量はどれくらいですか?「無料」列に表示されている45396ですか?
問題は、それらが合計されないか、「トップ」が報告したものに近くさえ見えないことです。上記の「vmstat」とほぼ同じ時間に取得した「top」の出力は次のとおりです。
[...]
Mem: 4059616k total, 3965504k used, 94112k free, 200020k buffers
[...]
だから...私は知らなかった 'vmstat'に隠された数字/オプションがあるはずだと思いますか?
この目的のために「vmstat」を使用する必要があります。これは要件が述べているとおりなので、他のコマンドでは使用しないでください。
したがって、理想的には、「vmstat」から達成したいのは、次のようなメモリ使用率です。
<used_memory>/<total_memory> * 100%.
ありがとう!