Tem certeza de que o que você realmente quer não é " wipefs
- limpar uma assinatura do sistema de arquivos de um dispositivo "?
dd
não é tão difícil de usar, especialmente obtendo os números certos de gparted
ou fdisk
, veja abaixo.
O método de disco inteiro funciona, como em dd if=/dev/zero of=/dev/sdx
. Possivelmente com bs=1M
para aumentar a velocidade. Ou substitua /dev/zero
por / dev / urandom 'para dados mais aleatórios. Como em " Disco de limpeza em segurança do ArchWiki ".
Para apenas um número de partição "n", também conhecido como "sdxn", poderia fazer dd if=/dev/zero of=/dev/sdxn
Para apenas os "primeiros" n MBs, você pode fazer dd if=/dev/zero of=/dev/sdx bs=1M count=n
Para o "início" & "end", você pode descobrir o tamanho do setor da unidade & setores totais - gparted
informa isso facilmente, em "Visualizar - > Informações do dispositivo" e até informa onde o início & setores finais são. parted
& fdisk
(para MBR) também deve.
Em seguida, use um pouco de matemática para descobrir onde limpar.
-
Minúscula (512b) maneira exata - encontre os setores a serem apagados. Se a sua unidade possui setores de 512 bytes, e tem 251658240 setores (é 120GB, = 251658240 setores * 512 bytes / 1024 converta para k / 1024 para M / 1024 para G) ...
- para limpar o último 1G (gig, G = 1024 * 1024 * 1024 bytes) você poderia descobrir os setores em 1GB (1GB / 512b = 1 * 1024 * 1024 * 1024/512 = 2097152 ), subtraia então do total de setores 251658240 - 2097152 = 249561088 e inicie nesse setor para esses vários setores:
dd if=/dev/zero of=/dev/sdx bs=512 seek=249561088 count=2097152
- para limpar o último 1G (gig, G = 1024 * 1024 * 1024 bytes) você poderia descobrir os setores em 1GB (1GB / 512b = 1 * 1024 * 1024 * 1024/512 = 2097152 ), subtraia então do total de setores 251658240 - 2097152 = 249561088 e inicie nesse setor para esses vários setores:
-
Você pode converter o
bs
,seek
&count
para usar M (M = 1024 * 1024) em vez disso, se for muito lento, passando de 512b por vez. O disco sempre começa em 0, mas termina em 251658240 * 512/1024/1024 = 122880 em M's.- Limpe o último 1G Há 1024 M's em um G, então pule para 122880 - 1024 = 121856 M's e faça:
dd if=/dev/zero of=/dev/sdx bs=1M seek=121856 count=1024
- Limpe o último 1G Há 1024 M's em um G, então pule para 122880 - 1024 = 121856 M's e faça:
-
Estiamte bruto Gig-at-a-time, funciona bem onde escrever além do "final" não causa danos (no final do disco, não limpando uma partição do meio). Tente 1G (G = 1024 * 1024 * 1024 bytes) de cada vez. Veja
man dd
para mais informações, entende K, M, G, outros.- O último G,
dd if=/dev/zero of=/dev/sdx bs=1G seek=119
omitindocount
para continuar até o final do dispositivo.
- O último G,
Ou, para uma maneira provavelmente mais rápida de escrever dados "aleatórios" em uma partição / unidade inteira, você pode usar dm-crypt :
First, create a temporary encrypted container on the partition (sdXY) or the full disk (sdX) you want to encrypt, e.g. using default parameters
# cryptsetup open --type plain /dev/sdXY container
Second, check it exists
# fdisk -l Disk /dev/mapper/container: 1000 MB, 1000277504 bytes ... Disk /dev/mapper/container does not contain a valid partition table
Finally, wipe it with pseudorandom (encrypted data), a use of /dev/urandom is not required as the encryption cipher is used for randomness:
# dd if=/dev/zero of=/dev/mapper/container dd: writing to ‘/dev/mapper/container’: No space left on device