ハードドライブを安全に消去するにはどうすればよいですか?


210

現在、保存されたパスワードと銀行口座情報を含む古いUbuntuインストールを含むUSB外付けハードドライブの販売を計画しています。

ドライブを販売する前に安全に消去するにはどうすればよいですか?


2
また、複数のOSを網羅した包括的な説明については、このEFFページご覧ください
トム・ブロスマン

@Lekensteyn 'キースロットを削除する'?AUを検索したところ、この部分的に関連する Q&A しか得られませんでした。これを新しい質問として尋ねる必要がありますか、それともここで説明されていますか?
トム・ブロスマン

安全なパスフレーズがあれば、ドライブを失っても世界は失われません。ただし、code.google.com/ p / cryptsetup / wiki / …の 5.3で説明されているように、キースロットをクリアすることをお勧めします。暗号化されたディスクの消去について質問してください。
レーケンシュタイン

回答:


226

ストレージデバイスを安全に消去する

と呼ばれるコマンドラインユーティリティがありshred、ファイルまたはデバイス全体のデータをランダムビットで上書きし、回復をほぼ不可能にします。

まず、デバイスの名前を識別する必要があります。

これは、のようなものかもしれません/dev/sdb/dev/hdb(しかしない好き/dev/sdb1、それはパーティションです)。を使用sudo fdisk -lして、接続されているすべてのストレージデバイスを一覧表示し、外部ハードドライブを見つけることができます。

注意:正しいデバイスであることを確認してください。間違ったデバイスを選択するとワイプされます。

そのデバイスに現在マウントされているパーティションがある場合は、すべてマウント解除します。次に/dev/sdX、デバイスの名前に置き換えて、次を実行します。

sudo shred -v /dev/sdX

これにより、デバイス上のすべてのブロックがランダムデータで3回上書きされます。-vフラグは冗長であり、現在の進行状況を出力します。

大容量デバイスの時間を節約するために、-nNこれをN回だけ行うオプションを追加できます。外付けハードドライブのサイズによっては、これに時間がかかる場合があります(4 GBのフラッシュドライブでは20分程度かかると思います)。

オプションを追加することにより、最後の反復後にすべてのビットをゼロに設定することもできます-z

sudo shred -v -n1 -z /dev/sdX

この後、デバイスを再パーティション化する必要があります。最も簡単な方法は、GPartedをインストールして使用することです。

sudo apt-get install gparted
gksu gparted

右上隅のリストでデバイスを選択します。次にDevice -> Create partition table、デバイスにパーティションテーブルを作成することを選択します。

次にfat32、ファイルシステムとして選択して、デバイス上のすべての未割り当て領域を使用する単一のパーティションを追加します。ツールバーの[ 適用 ]ボタン(緑色のチェックマーク)をクリックして、変更を適用します。

ヒント

  • オンラインまたは端末に入力して、マンページをshred読んでくださいman shred
  • ディスクの一部が消去されないことに注意してください-hdparmなどを介して、ドライブファームウェアの「SECURE ERASE」コマンドを使用して、ディスクを適切に削除してください。

31
ここでのベストプラクティス:すべてのハードドライブを切断し、外付けドライブを接続してから、ライブCDから上記の操作を行い、重要なものが壊れる可能性を防ぎます。
ニックパスクッチ

30
この回答は、ドライブに自己消去を要求するSECURE ERASEメソッドによって非推奨になっていることに注意してください。これにより、考えられるすべてのデータが処理され、システムに不必要に負担がかかることはありません。hdparmユーティリティを使用して、ドライブが自動的に消去する安全な消去を実行できます。この方法では、不良セクタを含むドライブ全体を消去しようとします。さらに、通常の方法を上書きするよりもはるかに高速です。SSDドライブの推奨方法でもありますshredが、非常に悪い考えです。
マールテンボデウェス

6
@owlstead:詳しく説明してもらえますか?安全な消去とは何ですか?より良いものがある場合は、別の答えをしていただければ幸いです。
マッドスキャーン14年

17
ATA Secure Eraseコマンドの使用に関するコメントは誤解を招くものです。SEの使用には深刻な問題があります(ベンダーからの一貫したサポートの欠如とプロセスの透明性の欠如に関して)。関連:security.stackexchange.com/questions/62253
MV。

2
@Fiksdalわからない。この答えを書いてから5年が経ち、そのように表現した動機を覚えていない。そうは言っても、「今日は事実上不可能ですが、将来的には十分な技術的改善があればもっともらしい」という方針に沿ったものだと思います。
-Frxstrem

94

ddツールを使用して「ゼロ」にするだけです:

  1. 経由でディスクユーティリティを起動します System > Administration > Disk Utility
  2. 左側のパネルで、あなたのディスクを探す、それを選択し、右側のデバイスパスを見つける(例えば。/dev/sdX
  3. gnome-terminalから次のコマンドを実行します(Applications> Accessories> Terminal):この行をコピーするだけ

    sudo dd if=/dev/zero of=/dev/sdX bs=1M

    なく、正しいデバイスパスを使用していることを確認してください!

これはディスク全体をゼロで上書きし、ギガバイトのランダムデータを生成するよりもかなり高速です。他のすべてのツールと同様に、これは何らかの理由(書き込みエラー、予約など)でマップされたブロックを処理しませんが、購入者がそれらのブロックから何かを回復するためのツールと知識を持っていることはほとんどありません。

PS:ブルース・シュナイアーのファンがあなたに投票する前に:ゼロで上書きされた非古代の回転式ハードドライブからデータを回復できることの証拠が欲しい。それ以外の場合はコメントすることも考えないでください!:P


6
Bruce Schneier(および本当に優れたツールであるDD)の+1
n3rd

6
これが最も強力な「証明」であるとは言いませんが、ガットマン法には理由があります。私の知る限り、最新のハードドライブは、ゼロで上書きされた場合、理論的にはデータを回復することができます。それがまだ成り立つかどうかに関係なく、願わくば/ dev / randomまたはその目的のための特定のアルゴリズムを使用して上書きすることで、それが害にならないことを認めることができます。
セリン

13
いいえ、それは痛いことはありません、それは多くの時間がかかります(特に/ dev / random:Pを使用する場合)疑わしい利点があります。私が読んだそのトピックに関する最後の論文(申し訳ありませんが、詳細はありませんが、2008年のものだと思います)は、実際のハードウェアでのテストのデータに基づいて、1ビットを回復するチャンスが50%未満であると示唆しました→コイントスを使用して各ビットを「回復」するときのエラー率。したがって、ゼロ調整では不十分であるという証拠がない限り(現時点では「多分」ではなく、「フリギングなし」)、これが私の選択方法です。
htorque

12
@Cerin私の理解では、これらの妄想的なデータ回復の空想が可能でさえあるという証拠は一度もなかったということです。リンクした記事の「批評」セクションで指摘したように、Guttman自身は、ドライブエンコーディングテクニックのテクニカル分析の結果よりも、悪霊を追い払う一種のブードゥー教の呪文としてのアルゴリズムの使用方法に批判的です。 。ドライブをゼロワイプ以上にする唯一の理由は感情的です...つまり、気分が良くなります...技術的ではありません。
不合理なジョン

4
いいですが、なぜbs=1Mパラメーターを付けたのか、親切に説明してもらえますか?man、およびバッファを1メガバイトに制限しているIIUCを読むことができます。なぜそんなに望ましいのですか?
gaazkam

20

セキュリティスタックエクスチェンジに関するこの決定的な質問をご覧ください

ハードドライブ上のすべての情報を確実に消去する方法

ここでは、さまざまな安全な削除オプションと物理的な破壊およびワイピングについて説明しているため、どのオプションが最善かを判断できます。

ただし、異なるストレージの現在のリカバリステータスは次のとおりです。

  • 非常に古いハードドライブ:トラック間にギャップがあったため、これらのギャップにブリードを拾う可能性がありました(走査型電子顕微鏡が手元にあった場合)。複数回の上書きは潜在的に有用でした。
  • 新しいハードドライブ:1回でも上書きした後に読み取ることができるテクノロジは現在存在しません。
  • ソリッドステートハードドライブ:ウェアレベリングは、安全に上書きできないことを意味します。代わりに、ボリューム全体を暗号化してキーを破棄してワイプするか、デバイスを破棄します。

非常に古いもの、たとえば30年前の定義は何ですか?
やる気

約20〜25年前の10Mb MFMドライブ、はい
Rory Alsop

これは、携帯電話やタブレットなどのデバイスのドライブとどのように関連していますか?
動機付け

@Motivated電話やタブレットがフラッシュメモリを使用していることを考えると、おそらくSSDの場合と同じ答えでしょうが、私にはわかりません。より良い情報をスーパーユーザーに求めることができます。
wjandrea

20

私は通常、破壊的な読み取り/書き込みテストを使用しbadblocks -wます。2つの主な利点は

  • 基本システムの一部であり、ほぼすべてのレスキューシステムであるため、Ubuntuインストーラーのレスキューシェルなどから利用できます。
  • ディスクに不良ブロックがあるかどうかの最後にレポートを取得します

レポートが問題を示している場合、すぐに故障する可能性が高いため、私はもはやディスクを販売しないことに注意してください。

使用例(ディスクがの場合sdd):

sudo badblocks -wsv /dev/sdd

svプログレスバー+詳細用に追加)


11

現在、Disksgnome-disks)ツールにはATA Secure Eraseがあります。これを使用して、ハードドライブを消去できます。コマンドラインツールを使用して、この回答で説明した同じオプションhdparm

  1. ディスクツールを開く→ターゲットディスクを選択します
  2. メニューから:ディスクのフォーマット...
  3. ドロップボックスから選択、消去:ATA Enhanced Secure Erase
  4. フォーマット

ATA拡張セキュア消去1 ATA Enhanced Secure Erase 2


2
これは一般的に最適なオプションですが、USB経由では適用されません(上記の質問で質問されています)。それについての警告と免責事項がata.wiki.kernel.org/index.php/ATA_Secure_Eraseにあります。それにもかかわらず、私はGnome問題でそれについて尋ねました。
コラン

1
@colan私が理解するように、それはフルスタックでの機能サポートに依存します(ディスク-カーネル-ドライバー-コントローラー-ドライブ)。2台のHDD(WD USB3 HDDおよびWD w / SATA-USB3アクティブアダプター)については問題ありませんでしたが、すべてのケースに当てはまるわけではないことを確認しました。ハードコード化されたブロックアライメント(512b &4kブロックは同一のイメージを作成しません)、一部は長いexecコマンドを含むSMARTをサポートしません、一部のUSBドライブはパスワードで保護/暗号化されたパーティションの標準化されていない/ねじれた実装を持っています)それを破る
user.dz

8
  • ドライブのコンテンツ全体で/ dev / randomを実行するループバックデバイスを作成する必要があります。
  • これにより、ドライブ全体がほぼ完全にランダムなデータで満たされます。その後、ddを使用してすべてのビットを0に戻すことができます。

  • 実際、ddはすべての情報をランダム化できる必要があります。

  • あなたはあなたのハードディスクに銀行情報を保存していると言っていたので、ライブCDから次のコマンドのいずれかを実行することをお勧めします(hdXはあなたのハードドライブです)。

    dd if=/dev/zero of=/dev/hdX

    dd if=/dev/random of=/dev/hdX

    dd if=/dev/urandom of=/dev/hdX

  • ハードディスクのサイズに応じて、非常に長い時間がかかります。

ご参考までに:

次のリンクを参照してください。

注意:

  • ランダムはランダムビットを使用し、ゼロは0ビットを使用します。
  • Urandomは、randomのセミランダムバージョンです。

ランダムは本当に必要ですか?すべてのビットを1に置き換えてから0に置き換えるだけでは不十分ですか?
バック

7

あなたはワイプを使用することができます

設置

sudo apt-get install wipe

そのソフトウェアを使用するか、次のコマンドを使用できます。

shred -vfz -n ? (drive)

「?」だった つまり、ドライブを細断する回数を入れてから、「(ドライブ)」があったため、細断するドライブを入れます。完了したら、好きなことをしてください。この方法は、ドライブに対する処理を制御でき、すぐに結果を得ることができるため、より効果的だと思います。

リンク集

  1. http://wipe.sourceforge.net/
  2. http://www.howtogeek.com/howto/15037/use-an-ubuntu-live-cd-to-securely-wipe-your-pcs-hard-drive/
  3. http://ubuntuforums.org/showthread.php?t=817882

6
なぜ他のものの上に、ワイプvsシュレッドを使用するのですか?
マッドスキャーン14年

7

最良の方法は、ATAドライブの安全な消去機能を使用することです。セキュア消去は、ファームウェアレベルでドライブを消去します。これ以上安全になりません。

最初にセキュア消去がサポートされているかどうかを確認します。

sudo hdparm -I /dev/sdX | grep -i security

(ディスクが何であれ、sdXをsda / sdb / sdcに置き換えます)。

出力が表示されない場合は、ddを使用します。

sudo dd if=/dev/zero of=/dev/sdX bs=1M

出力が表示される場合、デバイスがフリーズしていないかどうかを確認します。

sudo hdparm -I /dev/sdX | grep -i frozen

凍結されていない場合、パスワードを「Eins」に設定します。

sudo hdparm --user-master u --security-set-pass Eins /dev/sdX

オプション:これにかかる時間を知りたい場合があります。

sudo hdparm -I /dev/sdX | awk '/for SECURITY ERASE UNIT/'

次に、消去を実行します。

sudo hdparm --user-master u --security-erase Eins /dev/sdX

待って どうやら1 TBのディスクの場合、これには3時間以上かかる場合があります。

これらの手順を自動化する素晴らしいスクリプトがあります


6

DBANを使用できます。ウィキペディア

Darik's Boot and Nuke(通称DBAN)[...]は、データが永久に削除されて回復不能になるまでハードディスクを安全に消去するように設計されています。これは、Mersenne TwisterまたはISAAC( PRNG)。Gutmannメソッド、Quick Erase、DoD Short(3パス)、およびDOD 5220.22-M(7パス)も、データの残留を処理するオプションとして含まれています。

DBANは、フロッピーディスク、CD、DVD、またはUSBフラッシュドライブから起動でき、Linuxに基づいています。PATA(IDE)、SCSI、およびSATAハードドライブをサポートしています。DBANは、システム上にあるすべてのハードディスクを自動的に消去するように設定でき、無人のデータ破壊シナリオに非常に役立ちます。DBANはIntel x86およびPowerPCシステム用に存在します。

DBANは、他のデータ消去方法と同様に、コンピューターの寄付や販売などの個人的または商業的な状況でコンピューターをリサイクルする前に使用するのに適しています[2]。マルウェア感染の場合、DBANはディスクを実稼働に戻す前に使用できます。


3

このシナリオでddよりも細断処理のもう1つの利点:交換のためにベンダーに返品する必要がある障害のあるディスクがあります。

ddは最初の不良ブロックで停止し、残りを上書きできません(停止するたびにskip = ...を使用して先にジャンプしない限り)。

この場合、shredは書き込みエラーを無視し、喜んで続行します。


0

ルートに移動して

dd if=/dev/random of=/dev/(your usb drive device here); dd if=/dev/zero of=/dev/(your usb drive device here)

適切なドライブがあることを確認してください!


7
このような操作には/ dev / randomを使用しないでください。/ dev / randomは、エントロピープールを使用してランダムデータを生成し、このエントロピープールが空の場合、操作をブロックします。そのため、新しいランダム性を生成するためにコンピューターで何もしなければ、操作は永遠にかかります。代わりに/ dev / urandomを使用してください。参照man random
htorque

2
おそらくコマンドの前にを付ける必要がありsudoます。また、ddデフォルトより大きいブロックサイズを使用すると、より早く完了する傾向があります。だから私は示唆している非常に慎重に使用して:sudo dd if=/dev/random bs=1m of=/dev/sdX
非合理的なジョン・

ああ、それはああ、そうであることを意味したsudo dd if=/dev/urandom bs=1m of=/dev/sdX
不合理なジョン


0

シュレッドの使用を推奨している人は、悪いアドバイスを与えています。Shred自身のマニュアルページは、ジャーナルされたファイルシステムでは実質的に役に立たないと言っています。Ubuntuは、ファイルシステムのデフォルトを変更しない限り、ほぼ確実に使用できます(ext3とext4はジャーナルされます。 。)。

細断処理は、個々のファイルまたはファイルのセット(生データレベルではなく、ファイルシステムレベル)でのみ機能するため、ディスクの完全なブランキングまたはランダム化にはまったく役に立ちません。ディスクを安全に消去する場合は、ドライブのメインデバイスノード(たとえば、/ dev / sdc1ではなく/ dev / sdc)でddを使用する必要がありますが、何もマウントされていません。

しばらく時間がかかりますが、細断処理とは異なり、MBRから最終セクターまでハードディスクを完全に完全に消去します。また、ddでの大きな警告は、正しいデバイスで使用していることを確認するか、少なくとも誤って間違ったディスクを消去してください。システムドライブで誤ってddを使用すると、これは悲惨なものになる可能性があります。これにより、「ディスクデストロイヤー」というニックネームが付けられました。

シュレッドは、ドライブを安全に拭くための信頼できるツールではありません。ドライブを空にする正しい方法を販売または提供する場合は、ddでゼロにするかランダム化することです。shredは絶対に使用しないでください。


9
ファイルを細断処理しないでください。デバイス全体に向けます。ファイルシステムは無関係です。
デビッド

1
@DavidGiven技術的には、ファイルシステム内のファイルだけを細断処理できます。それが、ほとんどの場合、細断処理のマンページで説明されていることです。その場合、Yaroの警告はある程度有効です。しかし、はい、パーティション全体を細断処理す​​ることはまったく別のものです。その場合、ファイルシステムは確かに重要ではありません。
アロイスマーダル

0

それを行う最も簡単な方法は次のとおりです。

sudo shred -fv /dev/xxx

xxxはデバイスです。使用しているデバイスを確認するには、次のように入力します。

sudo fdisk -l

デバイスは、ディスクワードの後にコロンchar で示されます。

Disk /dev/sde: 500.1 GB etc...

ワイプなどが必要なディスクのファイルシステムをマウントしないでください。シュレッドは、一部の時間に必要な処理を実行します。-zオプションは、ワイプを非表示にするための0での最後の実行用であり、データをワイプする必要はありません。

最善の方法は、以前のユーザーが書いたようにddを使用することです。

sudo dd if=/dev/urandom of=/dev/xxx bs=1M

ランダムパターンを取得するより現代的で優れた方法であるurandomデバイスを使用します。

現在、他のツールは古く、開発する人が少ない場合があります。ShredはLinuxのコアアプリケーションに含まれています。

次の例を見てください:2009 http://lambda-diode.com/software/wipe/をワイプします。しかし、それは知られているアプリです。bleachbitを使用することは可能ですが、私が試みたようにそれは長い時間がかかりました。


-1

dd cmdが機能しない場合、リダイレクト方法を使用してデータを消去できます。

好む、

cat /dev/urandom > /dev/sd**a**   # depends on your hdd location 

または

または、cp(copy cmd)を使用して以前のデータを上書きできます。

cp /dev/urandom /dev/sd**a**      # depends on your hdd location 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.