Ces commandes écraseront votre appareil sda avec des zéros - la première fera les 16 premiers Mo (taille de bloc de 4096 et compte de 4096 blocs) et la seconde remplacera les 2 Mo derniers (taille de 512 blocs avec 4096 blocs) avec des zéros. (il ne s'agit pas d'effacement technique, et cela se rapporte à mon premier point ci-dessous.)
(c'était la partie déjà mentionnée dans d'autres réponses, y compris ici pour être complet)
Une autre chose qui mérite d'être mentionnée est que la taille du bloc a des effets, mais ceux-ci ne sont généralement visibles que sur les opérations à volume élevé. La façon la plus efficace (la plus rapide) d'exécuter la commande est si la taille de bloc de la commande correspond à la taille d'accès du périphérique, sinon le temps est perdu.
Si vous êtes intéressé, vous pouvez essayer de créer un fichier avec un million de blocs de 1 bloc et un fichier avec 1 million de blocs et voir la différence:
[user@host tmp]$ time dd if=/dev/zero of=/tmp/test1 bs=1 count=1000000
1000000+0 records in
1000000+0 records out
1000000 bytes (1.0 MB) copied, 2.44439 s, 409 kB/s
real 0m2.447s
user 0m0.177s
sys 0m2.269s
[user@host tmp]$ time dd if=/dev/zero of=/tmp/test2 bs=1000000 count=1
1+0 records in
1+0 records out
1000000 bytes (1.0 MB) copied, 0.00155357 s, 644 MB/s
real 0m0.003s
user 0m0.001s
sys 0m0.002s
[user@host tmp]$ ls -al test*
-rw-rw---- 1 user grp 1000000 Apr 8 15:51 test1
-rw-rw---- 1 user grp 1000000 Apr 8 15:51 test2
Comme vous pouvez le voir, la taille de bloc a un impact énorme sur l'efficacité. C'est peut-être une barre latérale pour le PO, mais je pense que c'est toujours pertinent.
TL; DR: N'exécutez pas de code arbitraire que vous trouvez sur le net, ou que quelqu'un à qui vous ne faites pas confiance vous donne. Ça va gâcher ta journée.