シェルスクリプトでディスク消去(8)

HDDを消去したあと、その中身について実際にランダムな文字列であったり、ゼロであったりで全体が上書きされているか確認したいところです。その確認にはhexdumpというコマンドで実現できます。

hexdumpのヘルプを見ると以下のような記述があります。

使い方:
hexdump [オプション] <ファイル>…

ファイルの内容を 16進数、10進数、8進数、ASCII文字で表示します。

オプション:
-b, --one-byte-octal 1バイトごとに8進表示
-c, --one-byte-char 1バイトごとに文字表示
-C, --canonical 標準的な16進+アスキー表示
-d, --two-bytes-decimal 2バイトごとに10進表示
-o, --two-bytes-octal 2バイトごとに8進表示
-x, --two-bytes-hex 2バイトごとに16進表示
-L, --color[=<モード>] 色表示の方法を指定します
カラー表示はデフォルトで有効です
-e, --format <形式> データ表示に利用するフォーマット文字列
-f, --format-file <ファイル> フォーマット文字列を収録するファイル
-n, --length <長さ> 入力のうち先頭から指定バイトだけを解釈
-s, --skip <オフセット> 開始から指定バイト飛ばします
-v, --no-squeezing 同一行を出力

-h, --help このヘルプを表示します
-V, --version バージョンを表示します

いろいろとありますが、ここでは先頭から2048バイト(=2Kバイト)を同一行も含めてアスキー表示も表示するようにします。

hexdump -C -v -n 2048 /dev/sda

ただ、これだと出力行が多いのと途中の行でぶったぎられてしまうので、先頭から100行だけ取り出すというように工夫します。それにはheadコマンドをパイプでつなげて

hexdump -C -v -n 2048 /dev/sda | head -n 100

のようにすればOKです。これは標準出力とファイルにも出力したいので、前回のteeコマンドを付加してあげればOKです。

あとは今までのものを組み合わせて作れば立派な?ものができああがります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です