web-dev-qa-db-ja.com

Windowsのcygwinでddを使用してUSBドライブをワイプするにはどうすればよいですか?

Windowsで Cygwin を使用してUSBドライブをワイプするために dd を使用しようとしています。 of引数には何を使用すればよいですか?

dd if=/dev/null of=?
2
user674669

ブロックデバイスに/dev/nullを書き込んでも何も起こらないことに注意してください。 /dev/sdcではなく/dev/sdc1を意味するブロックデバイスsdc1は、デバイス全体ではなく、最初のパーティションを参照します。

使用したい:

/dev/zero

または:

/dev/urandom
5
Cheeto

Cygwinは デバイスマッピングに続いて ハードディスクのようなデバイスに使用します:

POSIX device name     Internal NT device name

/dev/sda          \device\harddisk0\partition0  (whole disk)
/dev/sda1         \device\harddisk0\partition1  (first partition)
...
/dev/sda15        \device\harddisk0\partition15 (fifteenth partition)

/dev/sdb          \device\harddisk1\partition0
/dev/sdb1         \device\harddisk1\partition1

[up to]

/dev/sddx         \device\harddisk127\partition0
/dev/sddx1        \device\harddisk127\partition1
...
/dev/sddx15       \device\harddisk127\partition15

NTデバイス名は、管理コンソールのディスクの管理で確認できます。

また、入力として/dev/zeroの代わりに/dev/nullを使用します。

3
kolen

CygwinがUnix/Linuxインストールと同じコアコマンドを持っていると仮定すると、次のことができます df —これは、デバイスで使用可能な空き容量(ディスク空き)を示しますが、素敵なファイルシステムデータ—このような状況で使用できます。

たとえば、Mac OS Xターミナルからの df の出力は次のとおりです。

Filesystem    512-blocks       Used  Available Capacity   iused     ifree %iused  Mounted on
/dev/disk0s2   975093952  135358704  839223248    14%  16983836 104902906   14%   /
devfs                381        381          0   100%       660         0  100%   /dev
map -hosts             0          0          0   100%         0         0  100%   /net
map auto_home          0          0          0   100%         0         0  100%   /home
/dev/disk2s2  3906357344 2097411968 1808945376    54% 262176494 226118172   54%   /Volumes/Moe
/dev/disk1s2   235154168  118616008  116538160    51%  14826999  14567270   50%   /Volumes/Larry
/dev/disk1s3  3670941032 2100018304 1570922728    58% 262502286 196365341   57%   /Volumes/Curly

マウントポイントと接続しているファイルシステムを示す最後の3つのエントリに注意してください。したがって、/Volumes/Curlyを消去して、ある時点で彼を/Volumes/Shempという場所のデータに置き換えたいとしましょう。ドライブ上のすべてのデータを消去してから、これを実行します dd コマンド:

dd if=/dev/zero of=/dev/disk1s3/wipe_file.txt

そして、そのコマンドの機能を理解するために、ifは入力ファイルが何であるかを示し(get it、if)、ofは出力ファイルを示します(同様に…get it、 of)そしてそれだけです。また、/dev/zeroは不要なデータの入力先であり、/dev/null/dev/null文字のストリームの出力ソースであるため、/dev/zeroの代わりに0を使用しています。

したがって、その dd コマンドを実行すると、/dev/zero0文字の無限のストリーム)の内容がwipe_file.txt/dev/disk1s3/にコピーされます。つまり、wipe_file.txtという名前の新しいファイルが作成され、/dev/disk1s3/の全容量がいっぱいになるまで大きくなります。

ただし、データに対する偏執的な状況に応じて、次のようにifrandomに変更することもできます。

dd if=/dev/random of=/dev/disk1s3/wipe_file.txt

zeroを使用すると、明示的にwipe_file.txt0文字が入力され、randomはファイルにランダムな文字が入力されます。ファイルにランダムデータを入力すると、ファイルに何も入力しないよりも多くの計算能力が必要になるため、randomメソッドの方が時間がかかることに注意してください。しかし、あなたが詮索好きな目がデータを回復することを心配しているなら、それはドライブ上のすでに消去されたデータを確実に破壊するための最良のことかもしれません。

2
JakeGould