私のシステムでsar
報告された平均ディスク書き込み速度は約5 MB / sです。使用しながらdstat
永久的ではありませんが、30-50MB/sのスパイクが発生してスリープ状態になります。
それを使って、iotop
私はほとんどの書き込みがアプリによって行われていることを発見しました(しかしそれがどれほど確実かはわかりません)。
を使用すると、strace
アプリfatrace
が開き、別のディレクトリにファイルが作成され、そのファイルを閉じたり削除したりすることができます。文書はたくさんありますstrace
が、テキストはあまりありません。増え続けるファイル(ログなど)があるかどうかを調べるために追加情報を見つけましたが、見つかりません/proc/pid/fd
でした。だから私の結論は、すべての書き込みがアプリケーションによって生成された小さな一時ファイルを介して実行されることです。
各ファイルにどのくらい記録されているかを確認するには?各ファイルに書き込まれたバイト数を含むレポートが必要です。
これを行う方法はありますか?各ファイルの変更を確認または使用するなど、open
システムコールを再作成または使用することを検討しましたが、より簡単な方法があることを願っています。write
systemtap
ベストアンサー1
ブレンデン・グレッグのiosnoop
(彼の一部)perf-tools
)はアプリケーションのI / Oに関する詳細情報を提供します。たとえば、次のようになります。
# ./iosnoop
Tracing block I/O... Ctrl-C to end.
COMM PID TYPE DEV BLOCK BYTES LATms
supervise 1809 W 202,1 17039968 4096 1.32
supervise 1809 W 202,1 17039976 4096 1.30
tar 14794 RM 202,1 8457608 4096 7.53
tar 14794 RM 202,1 8470336 4096 14.90
tar 14794 RM 202,1 8470368 4096 0.27
tar 14794 RM 202,1 8470784 4096 7.74
tar 14794 RM 202,1 8470360 4096 0.25
tar 14794 RM 202,1 8469968 4096 0.24
tar 14794 RM 202,1 8470240 4096 0.24
[...]
(以下から取り込んだ例彼のブログ)。
これを使用して、システム内のすべてのI / Oを追跡したり(上記のように)単一プロセスまたはデバイスに制限したりできます。