ディスクがいっぱいになると dd は停止しますか?

ディスクがいっぱいになると dd は停止しますか?

ディスクを完全に消去するために次のコマンドを発行すると、ディスクがいっぱいになると自動的に停止しますか、それともcountオプションを指定する必要がありますか?

sudo dd if=/dev/zero of=/dev/disk7 bs=64m

この OS は OS X 10.9 です。

答え1

ディスクを完全に消去する

機械式ディスク(HDD)を作ることが目的の場合安全に原理的にも誰かが入手してデータを復元することが不可能なほど消去されたデータは、/dev/zeroソースとして使用すべきではなく、複数回上書きする必要があります。ウィキペディアそしてについて

セキュリティを気にしないのであれ/dev/zeroば問題ありませんが、デバイスに新しいパーティション テーブルを配置するだけでも問題ありません。

物理メディアに書き込む有効な使用例が本当に見当たりません/dev/zero。その理由は次のとおりです。

  1. セキュリティを重視するなら、これはあまりにも危険です。
  2. そうしないと、時間がかかりすぎて、時間と書き込みサイクルが無駄になります (ディスク上のデータ構造を新しいもので上書きできるため、データ回復プログラムだけが古いデータの断片を回復できる可能性があります。セキュリティを気にしないと言ったばかりなので、それは問題ありません。セキュリティを気にしているのであれば、これを読むべきではありません)。

自動的に停止する

もちろんです。次のファイルに書き込み続けるとどうなると思いますか?

「出力ファイル」を意味するオプションを具体的に指定しますof。ブロック デバイスを開き、ブロック デバイスの終わりに達するまで書き込み、終了します。これは の通常の動作ですdd

オプションを指定する必要がありますかcount?

ブロック デバイスの終わりに到達する前のある時点で書き込みを停止したい場合、または通常のファイル (つまり、ブロック デバイスではないファイル) に書き込んでいて、ファイルが置かれているファイルシステムがいっぱいになる前に書き込みを停止したい場合にのみ、これを実行します。

最後にいくつか注意点を述べます。

  • この動作は、OS X (の特定のバージョン) に固有のものではなく、OS X に固有のものでもありません。Linux、Android、BSD、およびおそらく POSIX 標準を実装するその他の OS でも同じように動作します。
  • dd小さな (2 MB) イメージ ファイルを作成し、それをループバック デバイスにマウントしてから使用して実行することで、独自の質問に答えることができますdd
  • count指定しないdd場合は停止します。最初次のいずれかの条件が発生します: if(入力ファイル) が (ファイルの終わり) をスローするか、オペレーティング システムが(出力ファイル) の最後のブロックに到達したEOFことを示す信号をスローします。of

答え2

ディスクがいっぱいになると停止します

関連情報