vmstat は 仮想メモリ統計
の略称です。これは Linux で非常に便利な監視ツールです。メモリに加えて、ブロック IO や CPU 時間などの追加情報も提供します
データ更新間隔を秒単位で示します。この値が指定されていない場合は、システムが起動してからの平均時間を示し、結果はこの時点で 1 回だけ出力されます
count
は出力回数を表します。この値が指定されていない場合、
の値が指定されている場合は、無制限の回数を意味します。
結果フィールドの説明
############分野###
#r | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
b | 無中断スリープ状態のプロセスの数 | ||||||||||||||||||||||
swpd | 仮想メモリの使用量 | ||||||||||||||||||||||
バフ | |||||||||||||||||||||||
#########キャッシュ### | キャッシュとして使用されるメモリの量|||||||||||||||||||||||
ディスクからスワップされたメモリの量 | #########それで### | メモリからディスクにスワップアウトされた量||||||||||||||||||||||
バイ | ブロックデバイスから受信したブロック数、単位:ブロック/秒 | ||||||||||||||||||||||
ボ | ブロックデバイスに送信されたブロック数、単位: ブロック/秒 | ||||||||||||||||||||||
cs | |||||||||||||||||||||||
######私たち### | |||||||||||||||||||||||
sy | |||||||||||||||||||||||
#id | |||||||||||||||||||||||
わ | |||||||||||||||||||||||
st | |||||||||||||||||||||||
表の 2 行目 フィールドの結果は、上から下に色に従っていくつかの部分に分かれています:プロセス情報、メモリ情報、IO情報、システム割り込みとコンテキスト、CPU時間 メモリ情報の値のデフォルトの単位は KB (1024 キロバイト) です。CPU 時間フィールドは特定の時間を表すのではなく、合計 CPU 時間の割合を表します 共通オプション
常见用法vmstat 命令主要用于识别系统的瓶颈,统计数据的时候,它不会包含自身进程
[root@cghost22 ~]$ vmstat 2 10 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 2 0 12552 148356 234324 3382956 0 0 1 21 4 4 2 2 97 0 0 1 0 12552 148264 234324 3382980 0 0 0 0 14974 27478 3 2 96 0 0 1 0 12552 148232 234324 3382984 0 0 0 14 14384 27181 3 2 96 0 0 0 0 12552 148376 234332 3383052 0 0 0 204 14197 26812 4 2 94 0 0 0 0 12552 148512 234332 3383088 0 0 0 4 14398 27155 3 2 95 0 0 0 0 12552 147892 234332 3383128 0 0 0 210 15515 28802 3 2 95 0 0 1 0 12552 148388 234332 3383156 0 0 0 0 15147 28042 3 2 95 0 0 0 0 12552 148264 234332 3383168 0 0 0 4 14380 27395 3 1 96 0 0 0 0 12552 148264 234336 3383216 0 0 0 198 14430 27008 3 1 95 0 0 2 0 12552 148140 234336 3383252 0 0 0 6 14233 27161 3 2 95 0 0 ログイン後にコピー
输出的结果中,内存数据的单位默认是 KB,可以通过 注意: k # 1000 bytes K # 1024 bytes m # 1000 * 1000 bytes M # 1024 * 1024 bytes ログイン後にコピー 上图中第一个结果中内存数据显示单位是 KB , 第二个结果中单位是 MB,将第一个结果对应字段的数值除以 1024 就得到了第二个结果
活跃内存是进程在使用的内存,非活跃内存是未运行进程的内存
这里的 fork 数量包括 fork、vfork 以及 clone 等系统调用 [root@cghost22 ~]# vmstat -f 12714 forks [root@cghost22 ~]# vmstat -f 12715 forks [root@cghost22 ~]# vmstat -f 12716 forks ログイン後にコピー 我们每次在控制台执行一次命令,系统就会 fork 一个新的进程来执行命令,比如像上面的例子,每执行一次 这个选项还可以用于统计某个操作消耗多少次 fork 调用,只需要在操作前后各执行一次
追加一列时间显示,有助于比较一段时间内的结果
vmstat 结果中的某些字段的数字有时会比较长,而且跟字段名的位置有偏差, 不太适合人类的观看习惯,
磁盘信息主要分三个方面:读、写、IO ,读和写以毫秒为单位,IO以秒为单位 读 total: 成功读取的总数 merged: 分组读取(产生一个 IO) sectors: 成功读取的扇区数 ms: 读取花费的毫秒 写 total: 成功写入的总数 merged: 分组写入(产生一个 IO) sectors: 成功写入的扇区数 ms: 写花费的毫秒 IO cur: 正在进行的IO s: IO花费的秒数 ログイン後にコピー
上图中,输出结果显示 sda3 分区设备的信息,它们包括:读计数、读取的扇区数,写计数,分区写请求总数 |
以上がLinux で vmstat コマンドを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。