解決策 1:
iostat そのような統計を報告できます。通常、ディストリビューションのパッケージ sysstat に含まれています。
dstat も一見の価値があるかもしれません。これは最新の代替品です。
解決策 2:
カーネルに IO アカウンティングがある場合は、iotop を使用できます そのような情報を提供します。また、collectd などの監視ツールは、データを記録してレポートすることができます。
解決策 3:
高負荷の原因を見つけるために、いくつかのことを確認できます。
vmstat -wovierwiem (プロセス、スワップ、メモリ、CPU、IO、システム) が表示されますpmstat -P ALLCPU コアごとの統計 (%iowait を使用) を提供しますiostat -x%util が高いか、待機時間が長いか、平均キュー サイズが大きいかを探しますiotopでさらに掘り下げる
ps -ax割り込み不可能なスリープ (通常は IO) である状態 D を探し、もう一度実行して、まだ D 状態にあるかどうかを確認します- strace でさらに深く掘り下げる
- lsof と netstat を使用して、これらのプロセスのファイルと接続を確認します
- sar/sysstat - このツールを使用すると、「現在」の統計だけでなく、昨日の午前 0 時に何が起こっていたかを確認することもできます
sar -b- 全体的な io 活動sar -d- 個々のブロック デバイス io アクティビティ