web-dev-qa-db-ja.com

Linuxでパーティションを再作成するためにSSDからすべてのパーティションを消去する最も簡単な方法はありますか。

SSDのすべてのパーティションとデータを消去したいので、再分割できます(これはセキュリティ上の理由からではありません)。

私はSudo dd if=/dev/zero of=/dev/sdb bs=1Mを見ましたが、これが各パーティションを0で埋めているだけでは、これが私がやりたいことがわからないのです。

私はこのコマンドをかなり頻繁に実行するつもりです、そして私は私のSSDの書き込みを使い果たしたくありません。この問題への取り組みについて誰かが私にアドバイスをくれますか?

20
IgDV

SSDの場合:blkdiscardを使用して、ディスク全体またはパーティション全体をトリムできます。安全性はそれほど高くありませんが、実際には瞬間的です(ディスクはすべてのセルを未使用としてマークするだけです)。

セキュリティのために:フルディスク暗号化を使用してください。暗号化されている場合でもディスク全体を拭くのは面倒ではありません - あなたはあなたの鍵を含んでいる領域(例えば、暗号化されたパーティションの最初の1〜2 MiB)だけを拭く必要があります。

再分割のために:やはり、すべてのデータを消去することを煩わさないでください。あなたはwipefsを使ってファイルシステムを破壊し、残りのブートローダを一掃するためにディスクの最初の1 MiBをスクラブするだけです。 mkfsを使ってパーティションをフォーマットした後、OSは単にそれが完全に空であると仮定します。

(実際、Linuxでは、mkfs.ext4はパーティションをフォーマットする前に自動的にパーティション全体をトリムします。)

41
grawity

Kamil Maciorowski を述べているように、 全体 ディスク全体を削除する最も良い方法は、ATAを使うことです。セキュア消去コマンド。これはshredのようなツールのようにセルを繰り返し上書きするのではなく、ハードウェアに単一のフルワイプをするように指示します。選択的にパーティションを消去する必要がある場合、これはディスク全体に対してのみ実行できます。 grawityの答えを参照してください。blkdiscard

コマンドの正確な実装はハードウェアによって異なります。

  • ほとんどのSSDは、バルク電気信号を使ってチップを全か無かの方法で拭きます。これは、(通常の)書き込み消耗を招きますが、可能な限り最小限の程度までです(〜1書き込みサイクル)。

  • 自己暗号化SSDは通常、コントローラチップ内の暗号化キーを消去するだけです(実際には瞬間的に)。自己暗号化ドライブ 常に 出荷時のデフォルトのキーを使用してもすぐに暗号化できます。そのため、ユーザーキーが設定されていなくても、キーを拭くことでフラッシュチップに解読不可能な混乱のみが残ります。

  • Spinning-Rustハードディスクは、すべてのセクタのハードウェアベースのゼロ書き込みを実行します。これは、dd if=/dev/zeroを実行するのと同じです(時間がかかります)。

このプロセスは、ここで非常によく説明されています。 https://www.thomas-krenn.com/en/wiki/SSD_Secure_Erase (私は個人的にこのプロセスを使用しました) OSを再インストールするときに私のSSDで繰り返し

編集:あなたがセキュリティへの影響に興味があるなら:このSecurity.SEの の質問をチェックしてください

14

覚えておいてくださいあなたはディスクをすばやく拭く方法についての解決策を求めていました/ dev/sdxをあなたのディスク、たぶん/ dev/sdaに取り替えてください

これはパーティションテーブルを消去します。

dd if=/dev/zero of=/dev/sdx bs=1024 count=50

これはディスク全体を消去しますが、しばらく時間がかかります。

cat /dev/zero > /dev/sdx
4
Jarrod Chesney