ディスク/ブロックストレージにランダムに書き込んだ内容を確認するにはどうすればよいですか?

ディスク/ブロックストレージにランダムに書き込んだ内容を確認するにはどうすればよいですか?

予備テストで仮想Linuxサーバーに接続されているブロックストレージデバイスを監視し、それがどのように機能するかを理解したいと思います。

  1. ブロックに必要な量のメモリ(KB単位)を書き込む
  2. 書き込み成功の確認(ブロックアクセス可能)
  3. 正しい量のメモリが記録されていることを確認してください。
  4. メモリブロックの削除
  5. 削除された量によって指定された量のスペースが確保されることを確認する

ブロックストレージのメモリアドレスに具体的に書き込む方法は? CやPythonでできると思います。そのユニットがおよびに存在することがわかりますが、/dev/vdcそれを/sys/block/vdc正確に監視する方法がわからないのか、上記のアイデアが良いアプローチなのかよくわかりません。

CentOS6/7

答え1

次のコマンドを使用して、メモリブロックの書き込みと読み出しができますdd

dd if=/dev/zero of=/dev/vdc bs=512 count=2 seek=123

/dev/vdc0を入力として使用して、ブロック123と124に512バイトの2つのブロックを書き込みます。何でも入力として使用できます:/dev/urandomビットパターンを生成するいくつかのプロセス...

もう一度読むことができますdd。たとえば、次のように16進数で表示します。

dd if=/dev/vdc bs=512 count=1 skip=123 | hexdump -C

あなたは次のようなものを見なければなりません

00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000200

hexdump同じ行がマージされるためです。

詳細についてはを参照してくださいman dd

「メモリブロック」を読み書きする要件をもう一度考えてみることもできますが、コマンドラインからメモリを予約してアクセスすることは容易ではありません。

CやPythonにしたい場合はお問い合わせください。スタックオーバーフロー、ここではありません。

関連情報