Assumindo que o Cygwin tenha os mesmos comandos centrais de uma instalação Unix / Linux, você pode nos df
- que informa quanto espaço livre (sem disco) está disponível em seus dispositivos, mas também fornece a você bons dados do sistema de arquivos - você pode usar para situações como essa.
Por exemplo, aqui está a saída de df
do meu terminal do Mac OS X :
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
Observe as três últimas entradas que mostram pontos de montagem, bem como o sistema de arquivos ao qual você está conectado. Então, digamos que eu queira apagar /Volumes/Curly
para substituí-lo em algum ponto com dados de um lugar chamado /Volumes/Shemp
, eu iria apagar todos os dados na unidade e, em seguida, executar este dd
:
dd if=/dev/zero of=/dev/disk1s3/wipe_file.txt
E só para você entender o que esse comando faz, if
indica qual é o arquivo de entrada (obtê-lo, if
) e of
indica o arquivo de saída (da mesma forma… obtê-lo, of
) e naquela. E estou usando /dev/zero
em vez de /dev/null
, pois /dev/null
é um destino de entrada para os dados que você não precisa, enquanto /dev/zero
é uma fonte de saída para um fluxo de 0
caracteres.
Então, quando você executar esse dd
, comande o conteúdo de /dev/zero
(que é apenas um fluxo interminável de 0
caracteres) será copiado para wipe_file.txt
on /dev/disk1s3/
. O que significa que um novo arquivo chamado wipe_file.txt
será criado e crescerá & cresce até preencher a capacidade total de /dev/disk1s3/
.
Mas, dependendo da paranóia que você tem sobre os dados, você também pode alterar if
para random
da seguinte forma:
dd if=/dev/random of=/dev/disk1s3/wipe_file.txt
Usar zero
explicitamente preencherá apenas wipe_file.txt
com 0
caracteres, enquanto random
preencherá o arquivo com caracteres aleatórios. Observe que preencher um arquivo com dados aleatórios exigirá mais poder de computação do que apenas preencher o arquivo com nada, portanto, o método random
demorará mais. Mas se você está preocupado com a intromissão de recuperar dados que podem ser a melhor coisa para destruir dados já apagados em uma unidade.