GNU/Linux >> Linux の 問題 >  >> Linux

「同期」操作の進行状況を見ることはできますか?

/proc/meminfo を見る Dirty が表示されます すべてのデータがスプールアウトするにつれて、時間の経過とともに数が減少します。その一部は Writeback に流出する可能性があります 同じように。これはすべてのデバイスに対する要約になりますが、システム上の 1 つのデバイスが残りのデバイスよりもはるかに遅い場合は、通常、そのキュー内のすべてがそれに関連することになります。おそらく Dirty が見つかるでしょう 開始時の数値が大きく、sync 0 に近づくのとほぼ同時に終了します。これを試してインタラクティブな表示を取得してください:

watch -d grep -e Dirty: -e Writeback: /proc/meminfo

通常のディスクでは、通常 Writeback を無視できます 、しかし、それがより頻繁にUSB転送パスに関与しているかどうかはわかりません.明確な傾向がなく上下に跳ねるだけの場合は、おそらく Dirty を見ることができます


/sys/block/<device>/stat を見ることができます 同期中に適切なデバイスのファイルを作成します。 9 列は、デバイスで進行中のリクエストの数を示します。同期が完了すると、この数はゼロになります。
それをバイト数に変換する方法はわかりませんが、保留中の「もの」の量を大まかに把握できるはずです。

詳細については、カーネル ドキュメントの stat.txt ファイルを参照してください。 (inflight もあります 私のシステムのそのディレクトリにあるファイルには、進行中の読み取りおよび書き込み要求が含まれている可能性がありますが、そのためのドキュメントが見つかりません.)


グレッグの答えを使用することで、単純に sync を持つことができます メモリ内のダーティ ブロックの状態を表示しながら、バックグラウンドで実行します。

これを実現するには、次のコマンドを実行するだけです:

sync & watch -n 1 grep -e Dirty: /proc/meminfo

これは sync を呼び出します watch の実行中にバックグラウンドで 前に。 sync の場合 コマンドが終了すると (Dirty ブロックのサイズが 0 に達した頃)、次のような出力が得られます:

1]  + 27260 done        sync

これは、コマンドが終了し、watch を強制終了できることを意味します。 コマンド Ctrl +C .


Linux
  1. 使用している Fedora のバージョンを確認するにはどうすればよいですか?

  2. Linuxでキーボードの状態を取得するにはどうすればよいですか?

  3. プログレスバーを表示しないように cURL を取得するにはどうすればよいですか?

  1. SIGILL ハンドラーで、問題のある命令をスキップするにはどうすればよいですか?

  2. BlueZ on i.MX25 :RFCOMM ソケットに接続できません:操作が進行中です

  3. 受け入れキューの長さを監視するにはどうすればよいですか?

  1. Linuxのwatchコマンドでコマンドとタスクを監視する

  2. LinuxのIPツールでできる3つの便利なこと

  3. Pythonのmatplotlibで「バックエンド」を設定するにはどうすればよいですか?