Linux Live CDでHDDを丸ごと消去!ゼロフィルの正しいやり方と手順を解説
PCの中で最も重要でありながら、同時に最も危険なパーツといえばハードドライブです。ここでいう「危険」とは物理的なリスクのことではなく、そこに保存されているデータを指します。プライバシーに関わる情報、大切な書類、見られたくない画像など、あらゆるデータが眠っている可能性があるからです。だからこそ、使わなくなったハードドライブは適切な方法で確実に消去することが重要なのです。
ただし、OSに標準搭載されている基本的なフォーマットツールを鵜呑みにしてはいけません。多くの場合、これらのツールはデータを実質的に消去しておらず、専門ツールを使えばファイルが復元できてしまうのです。この問題を根本的に解決するのが、セクター単位でドライブ全体を上書きする「ゼロフィル」という手法です。本記事では、Linuxライブ環境を使ってハードドライブをゼロフィルする具体的な手順を詳しく解説します。
ハードドライブをゼロフィルすべき理由
技術用語の中には意味が曖昧なものも少なくありませんが、「ゼロフィル」はまさに文字通りの処理を行います。ハードドライブの記憶領域を先頭から末尾まですべてゼロで埋め尽くし、それまで存在していたファイルの痕跡を完全に消し去るのです。
このフォーマット方式は非常に効果的で、特にゼロフィルを複数回繰り返せば、ファイルの痕跡をほぼ完璧に除去できます。ゼロの代わりにランダムな文字列で埋め尽くす手法もありますが、得られる効果は同じです。
ゼロフィル済みのハードドライブは、中身が完全に空のドライブと同じ状態になります。そのため、第三者がデータを復元することは事実上不可能になります(可能な限り不可能に近づける、という表現が適切でしょう)。「本当にそこまで必要なのか?」と感じている方のために、具体的なシナリオを紹介します。
たとえば中古PCを売却する際、ドライブを「クイックフォーマット」だけで済ませたとします。ところが購入者がデータ復元ソフトを使えば、あなたの家族写真、平文で保存されていたパスワード、重要な身分証明書などが簡単に入手できてしまうかもしれません。
ハードドライブをゼロフィルすれば、こうしたリスクを完全に排除できます。処理には数時間かかることもありますが、将来起こりうる深刻なトラブルを未然に防ぐ投資だと考えれば、十分に価値のある作業です。
Linuxライブ環境を作成する
ハードドライブを完全消去するということは、言い換えれば動作させるOS自体も失うことを意味します。そこで必要になるのが、LinuxライブDVDまたはライブUSBです。
ライブ環境とは、ディストリビューションをインストール前に試せるポータブルなLinux環境のことですが、今回は少し違う目的で活用します。ほぼすべてのLinuxディストリビューション(および付属のライブCD/USB環境)には、ハードドライブをゼロフィルするのに必要なツールが最初から含まれています。
代替策として、消去したいハードドライブをLinuxが稼働する別のPCに接続する方法もあります。ただし、ライブ環境を使えば「誤って間違ったドライブを消去してしまう」という致命的なミスを防ぎやすくなります。
UbuntuやDebianといった主要ディストリビューションが提供する既製のライブ環境を使ってもいいですし、Linux Live USB Creatorなどのツールで独自に作成することも可能です。本ガイドでは、最も人気の高いLinuxディストリビューションのひとつであるUbuntuのライブ環境を使用します。
起動用USBメモリの作成手順
- 別のPCで作業するか、ドライブを消去する前に、Ubuntu公式サイトへアクセスし、最新デスクトップ版のISOファイルをダウンロードします。最新リリースでもLTS(長期サポート)版でもどちらでも構いません。
- ダウンロードが完了したら、ISOファイルの内容をDVDまたはUSBメモリに書き込みます。USBメモリを使う場合は、Linux・macOS・Windowsに対応した書き込みツールbalenaEtcherをダウンロード&インストールしてください。以降の説明ではUSBメモリを使う前提で進めます。
- balenaEtcherを開き、Select ImageをクリックしてダウンロードしたUbuntu ISOファイルを選択します。続いてSelect Targetをクリックし、書き込み先のUSBメモリを指定します。両方の選択が終わったらFlashボタンを押して、ISOファイルの書き込みを開始します。
- 書き込みが完了したらUSBメモリを安全に取り外し、消去対象のPCに挿入して再起動します。Ubuntuの起動画面が表示されたら、Try Ubuntu Without Installing(インストールせずにUbuntuを試す)を選択してください。
これでUbuntuライブ環境が起動し、ハードドライブのゼロフィル作業を始められる状態になりました。
shredコマンドでハードドライブをゼロフィルする
Linuxのshredコマンドは、ドライブを安全かつ確実に消去するために特化したコマンドです。ライブ環境が起動したら(または別のLinuxシステム上で作業する場合も同様に)、ターミナルからこのコマンドを実行します。
Step 1: 消去対象のドライブを特定する
まず、どのハードドライブを消去すべきかを正確に特定します。ターミナルウィンドウを開き(Ctrl+Alt+Tキーを押下)、以下のコマンドを入力して接続中のすべてのストレージデバイスを一覧表示しましょう。
sudo fdisk -l
表示された一覧から目的のハードドライブを見つけ、デバイス名(例:/dev/sda)を必ず控えておいてください。
Step 2: shredコマンドを実行する
次にshredコマンドを実行します。shredは上書きパスの回数を自由にカスタマイズでき、ドライブを複数回ゼロフィルすることも可能です。
以下のコマンドを入力します。-nは上書きパスの回数、-zはドライブをゼロで埋めるオプション、-vは進行状況を表示するオプションです。
sudo shred -n 2 -z -v /dev/sda
必ず正しいデバイス名を指定してください。「/dev/sda」の部分はご自身の環境に合わせて置き換える必要があります。この操作に二度目のチャンスはありません!
SSDをお使いの方への注意: 特にドライブを再利用する予定がある場合は、パス数を最小限に抑えることをおすすめします。その場合は-nフラグを1に設定し、以下のように実行します(/dev/sdaは正しいデバイス名に読み替えてください)。
sudo shred -n 1 -z -v /dev/sda
準備が整ったらEnterキーを押して、消去プロセスを開始します。
Step 3: 処理の完了を待つ
shredコマンドがドライブ全体をゼロで埋め終わるまでには相応の時間がかかります。特に複数回のパスを実行する場合は顕著です。ドライブの容量が大きいほど処理時間は長くなり、さらにPCのスペックやハードドライブ自体の読み書き速度にも左右されます。
shredによるゼロフィルが完了すれば、ドライブは完全に空の状態になります。その後は用途に応じて、再利用するなり廃棄するなり自由に判断できます。
不要になったハードドライブは消去か破壊を
使わなくなったストレージの行き先をまだ決めていないのであれば、今すぐ計画を立てましょう。ゼロフィルによる論理的な消去でも、ドリルで穴を開ける物理的な破壊でも、ハードドライブを安全に処分する方法を知っていれば、データが第三者に盗まれる不安から解放され、心の平安が得られます。
破損または破壊されたハードドライブからファイルを復元するのは極めて困難ですが、不可能ではありません。突然故障したハードドライブからのデータ救出に挑戦することもできますが、結局のところ最も確実な対策は、大切なファイルを日常的にバックアップしておくことだということを忘れないでください。
-
LinuxでHDD・SSDのデータを完全にワイプする方法|確実な消去手順まとめ
パソコンを新調して古いPCを手放すとき、「個人的な写真がインターネット上に流出したらどうしよう」と不安になる方は多いはずです。HDDやSSDからデータを完全に消去したい理由はさまざまあります。しかし残念ながら、実際の削除プロセスはハリウッド映画のようにスイッチ一つで数秒ですべてが消える、というものではありません。 とはいえ、少しの忍耐とターミナルでのコマンド入力、あるいは適切なLive CDさえあれば、HDDやSSD全体をワイプし、第三者によるデータ復元を困難——場合によっては不可能——にすることができます。 セキュアイレース(Secure Erase)は本当に安全なのか? セキュア
-
コマンドプロンプト(CMD)で破損したハードディスクを修復する5つの方法【Windows 10】
内蔵・外付けハードディスク、USBメモリ、SDカードなどの記憶媒体が破損するのは、テクノロジー関連で最も恐ろしいトラブルの一つです。特に、家族の写真や動画、仕事のファイルなど重要なデータが保存されていた場合、心臓が止まりそうな衝撃を受けることもあるでしょう。 ハードディスクの破損を示す典型的なサインには、以下のようなものがあります。 「セクターが見つかりません」というエラーメッセージ 「ディスクを使用する前にフォーマットする必要があります。今すぐフォーマットしますか?」という表示 「X:\ にアクセスできません。アクセスが拒否されました」というエラー ディスクの管理でステータスが「RAW」に