Linux起動用USBメモリの作成がすごく簡単になっているのですね。ハードディスク初期化用Linuxを用意しておくと便利かな、と思ってLinux起動用USBメモリを作成してみました。
まず、準備として「Homepage | Ubuntu Japanese Team」から、Ubuntu Linuxのisoイメージをダウンロード(現時点での最新版は ubuntu-ja-12.04-desktop-i386.iso(CDイメージ))をしておきます。
次に、「UNetbootin – Homepage and Downloads」からダウンロードしたUNetbootinツールを使って、isoイメージをUSBメモリに書き込みます。GUIアプリなので、簡単に指定できます。
ハードディスクのデータ消去にはshredとddを使用します。米国コンピュータセキュリティセンター(NCSC)方式NCSC-TG-025水準で初期化するには、次のようにします。固定値を3回書き込んでいます。書き込むデバイスとして「/dev/sda」を指定しています。データを残しておきたいディスクがついている場合は、この指定を間違えないようにしてください(デバイスを知る方法は後述)。shredで-zオプションを使う方法もあります。こちらはランダムな書き込みを25回行い、最後にNULL(0)を書き込みます。どこまでやるかは、時間との相談になります。
$ sudo shred -n 3 -v /dev/sda $ sudo shred -z -v /dev/sda
ddでも同じ事ができます(zオプションは別です)。普通に使うと性能がでないので、bs(ブロックサイズ)指定である程度の大きさを指定した方が良いでしょう。
$ sudo dd if=/dev/urandom of=/dev/sda bs=64MB $ sudo dd if=/dev/urandom of=/dev/sda bs=64MB $ sudo dd if=/dev/urandom of=/dev/sda bs=64MB
デバイスを知る方法としては、dmesgをみたり、/proc/diskstats をみたりします。dmesgであれば、下記で/dev/sdaであることがわかります。
$ sudo dmesg | grep "disk" [ 1.252384] sd 0:0:0:0: [sda] Attached SCSI disk
/proc/diskstats では、sdやhdをgrepしてヒットすれば、わかります。下記ではsdaがヒットするので、/dev/sdaであることがわかります。IDEハードディスクだと、hdaなどがヒットするはずで、その場合は/dev/hdaなどとなります。
$ cat /proc/diskstats | grep sd 8 0 sda 508 12 4160 36 0 0 0 0 0 36 36 $ cat /proc/diskstats | grep hd