手元に、ハードディスクが10個以上ある。
自分で使わなくなったものや、仕事で客先の壊れたPCから抜き出したもの、会社の古いサーバに使っていたものなど。
何故そんなにあるのかというと、やっぱりデータが他人に見られちゃイヤだから。大したデータは入っていないとはいっても、見られないに越したことはない。
ではどうするか、と言う話。
いろいろな方法はあるけれど、Windows上からおこなうのか、Linuxを使うかを検討した。
Windowsなら、コマンドプロンプトを開いて、以下のようにすると、Zドライブの内容をクリアする。
cipher /w:Z:
ただ、NTFSフォーマットされたドライブであることが必須で、本来NTFSボリュームの暗号化関連のツールなので、いまいち使い勝手がよくない。
それでも、0×00で埋めて、次に0xFFで埋めて、最後に乱数を埋めるという3段階のステップを行うので、ドライブ(パーティション)単位では、充分消去を行ってくれる。
linuxの場合、一番お手軽なのは、以下のようにする。
dd if=/dev/urandom /dev/HDD
こうすれば、乱数をハードディスク全体に上書きしてくれる。上記の場合、パーティションなど関係なく、ディスクの先頭から最後までを乱数で埋め尽くす。これを2回程度行えば、そこらのディスク復旧ソフトでもお手上げだ。
どうせ2、3回繰り替えさせるなら、ちゃんとツールを使った方がいい。
GNU coreutilsに含まれている shredコマンドだ。以下のようにすると、/dev/hdaとして認識したデバイス(パーティションなんか関係ねぇ)3回乱数を書き込み、最後にゼロで埋める。 -v をつけておけば、進捗を表示しながら行う。
shred -v -n 3 -z /dev/hda
しかしどの方法で消去するにしても時間がかかる。80GBのHDDだと、3時間4時間グライか?USB-IDEな変換ツールだからいけないのかな。素直にIDEにつなげればもっと早いか?
少なくともOSから複数台のHDDとして認識できるから、複数台同時作業ができるか。。。
これからはS-ATAが主流だから今更IDE向けのものに投資してもしょうがないからなぁ。
どうせ明日も仕事しながらPCの余力でこの作業させてるんだろうから、もっと速い方法にするか。