統計情報を取得するUNIXコマンド。
仮想メモリーの統計(virtual memory statistics)(ついでにCPUも)を表示する。
5秒間隔で13回表示すると、ちょうど1分になる。
(最初の行のデータは、システムが起動してからの全てのサマリー)
> vmstat 5 13 ←5秒間隔で13回表示 kthr memory page disk faults cpu r b w swap free re mf pi po fr de sr s0 s3 -- -- in sy cs us sy id 0 0 0 8658848 299696 13 53 8 3 2 0 0 0 0 0 0 410 510 173 1 1 98 ←初回は、システム起動後から今までのサマリー 3 0 0 8566656 200032 36 106 0 75 38 0 0 0 0 0 0 606 10739 812 18 16 67 1 0 0 8566680 200192 6 1 3 73 37 0 0 0 0 0 0 595 9605 710 14 15 71 1 0 0 8566664 200168 36 106 3 73 38 0 0 0 0 0 0 622 10479 802 16 18 66 2 0 0 8566664 200176 6 2 3 75 38 0 0 0 0 0 0 600 9960 750 16 16 68 0 0 0 8566664 200176 36 106 2 73 37 0 0 0 0 0 0 602 10280 767 13 18 69 1 0 0 8566664 200176 5 1 3 70 37 0 0 0 0 0 0 595 9509 712 14 16 70 1 0 0 8566664 200192 41 141 3 81 45 0 0 0 0 0 0 608 10632 787 13 22 65 0 0 0 8566664 200192 6 2 3 73 37 0 0 0 0 0 0 601 9843 728 14 16 70 1 0 0 8566664 200184 36 106 2 73 37 0 0 0 0 0 0 598 10444 773 16 17 67 1 0 0 8565376 196512 421 738 2670 0 0 0 0 0 0 0 0 484 2207 328 88 12 0 0 0 0 8566016 197136 352 2 2245 0 0 0 0 0 0 0 0 580 857 205 91 6 4 0 0 0 8565960 198848 387 104 278 2 0 0 0 0 0 0 0 478 1293 275 91 8 1
ディスクの「s0」は「sd0」を省略している模様。[2007-01-17]
ディスクの一覧を知りたければ、iostat -xしてみるとよい。
表記 | 説明 | 更新日 | |
---|---|---|---|
cpu | us | CPUがユーザー(user)モードで使われた割合 | 2007-01-17 |
sy | CPUがシステム(system)モードで使われた割合 | 2007-01-17 | |
id | IDLE率(CPUが空いている率) |
ディスクI/O(ついでにCPUも)の状況を表示する。
5秒間隔で13回表示すると、ちょうど1分になる。
(最初の行のデータは、システムが起動してからの全てのサマリー)
ディスク(デバイス)がたくさん有る場合は、限られた個数のディスクしか表示されない。
> iostat 5 13 ←5秒間隔で13回表示 tty sd0 sd30 nfs1 cpu tin tout kps tps serv kps tps serv kps tps serv us sy wt id 0 2303 31 2 9 0 0 0 0 0 0 1 1 0 97 ←初回は、システム起動後から今までのサマリー 0 47726 386 43 8 0 0 0 0 0 0 13 20 10 57 0 50175 335 43 8 0 0 0 0 0 0 14 17 13 56 0 48556 364 42 8 0 0 0 0 0 0 16 18 11 55 0 22485 2790 77 10 0 0 0 0 0 0 49 19 8 24 0 39 5390 18 10 0 0 0 0 0 0 90 10 0 0 0 0 4765 67 11 0 0 0 0 0 0 90 6 4 0 0 0 3023 23 7 0 0 0 0 0 0 92 8 0 0 0 0 2963 4 20 0 0 0 0 0 0 95 5 0 0 0 0 2899 4 18 0 0 0 0 0 0 91 9 0 0 0 0 5419 24 9 0 0 0 0 0 0 91 8 1 0 0 0 6019 21 10 0 0 0 0 0 0 90 9 1 0 0 0 5645 30 17 0 0 0 0 0 0 92 7 0 0
ディスク(sd0やsd30等)を列挙すると、そのディスクについての情報が表示される。[2007-01-17]
ディスクを指定しなかった場合は、デフォルトの個数(まで)のディスクが表示される。
全てのディスクについての情報が表示される。[2007-01-17]
>iostat -x 2 3 extended device statistics device r/s w/s kr/s kw/s wait actv svc_t %w %b sd0 0.1 1.2 3.4 7.7 0.0 0.0 17.8 0 1 sd30 0.0 0.0 0.0 0.0 0.0 0.0 0.2 0 0 nfs1 0.0 0.0 0.0 0.0 0.0 0.0 7.6 0 0 extended device statistics device r/s w/s kr/s kw/s wait actv svc_t %w %b sd0 10.0 24.5 59.0 37.7 0.0 0.7 20.4 0 12 sd30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 nfs1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 extended device statistics device r/s w/s kr/s kw/s wait actv svc_t %w %b sd0 19.5 0.0 185.5 0.0 0.0 0.1 6.3 0 9 sd30 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 nfs1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0
全てのディスクおよびtty(-tオプション)とcpu(-cオプション)の情報が表示される。[2007-01-17]
表記 | 説明 | 更新日 | |
---|---|---|---|
tty | tin | 入力文字数/秒 | 2007-01-17 |
tout | 出力文字数/秒 | 2007-01-17 | |
disk (sd0等) |
tps | 1秒当たりのトランザクション数(transaction per second) たぶんr/s+w/s |
2007-01-17 |
r/s | 読込数/秒 | 2007-01-17 | |
w/s | 書込数/秒 | 2007-01-17 | |
kps | 1秒当たりの読み書きキロバイト数(kB per second) たぶんkr/s+kw/s |
2007-01-17 | |
kr/s | 読込kB/秒 | 2007-01-17 | |
kw/s | 書込kB/秒 | 2007-01-17 | |
wait | 待機中の平均トランザクション数 | 2007-01-17 | |
actv | 処理中の平均トランザクション数 | 2007-01-17 | |
serv svc_t |
平均サービス時間(ミリ秒) | 2007-01-17 | |
%w | トランザクションの待機時間の割合 | 2007-01-17 | |
%b | ディスクビジー(トランザクション処理中)の割合 | 2007-01-17 | |
cpu | us | CPUがユーザー(user)モードで使われた割合 | 2007-01-17 |
sy | CPUがシステム(system)モードで使われた割合 | 2007-01-17 | |
wt | CPUがI/O待ち(wait)している割合 | 2007-01-17 | |
id | IDLE率(CPUが空いている率) |
優先順位を変えてコマンドを実行する。
1〜19の範囲でnice値を増やせる(増やすと優先順位が下がる)(変更値のデフォルトは10、最大値を超えたら19扱い)
ただ、Solarisではniceは互換性の為に残っているだけで、priocntlの方が推奨されているらしい。
> ps -efla | grep "ps " 8 O usr 11277 10733 0 50 20 ? 162 22:05:49 pts/29 0:00 ps -efla > nice ps -efla | grep "ps " 8 O usr 11287 10733 0 80 30 ? 162 22:06:02 pts/29 0:00 ps -efla > nice -20 ps -efla | grep "ps " 8 O usr 11307 10733 0 99 39 ? 162 22:06:24 pts/29 0:00 ps -efla ↑ ↑ ↑ ↑ ↑ nice値 ↑ 優先順位(大きいほど優先順位が低い) プロセッサ使用率(90[%]までいったらかなり負荷が高い)
優先順位を変えてコマンドを実行する。
> ps -efla | grep "ps " 8 O usr 19523 19031 0 50 20 ? 162 23:05:00 pts/5 0:00 ps -efla > priocntl -e -c TS -m -10 ps -efla | grep "ps " 8 O usr 19196 19031 0 60 23 ? 162 23:03:10 pts/5 0:00 ps -efla > priocntl -e -c TS -m -60 ps -efla | grep "ps " 8 O usr 19192 19031 0 99 39 ? 162 23:01:23 pts/5 0:00 ps -efla ↑ 優先順位(大きいほど優先順位が低い)
オプション | 説明 |
---|---|
-e | このオプションを指定することで、実行するコマンド(上の例では「ps -efla」)を指定できるようになる |
-c TS | スケジューリング方法「タイムシェア」を指定 |
-m 優先度変更値 | マイナス値を指定すると、優先順位が低くなる |