How long will it take to zero fill 1TB (using dd dev/zero)?
I'm actually doing two 500G drive simultaneously if it matters.
Super User is a question and answer site for computer enthusiasts and power users. It only takes a minute to sign up.Sign up to join this community
It depends on many factors, including but not limited to:
Additionally, although zeroing a drive is a simple task for the CPU and RAM, there may still be an effect from:
Assuming a fairly recent computer with middle-grade drives, on a minimal linux boot disk running JUST the zeroing operation (no gui, internet, etc) loaded entirely to RAM, it could be anywhere from 2-12 hours. If I had to throw a single number out, I'd say closer to 3 and a half hours, but again, there's not enough information to get a good estimate other than actually doing it.
If you have more than 1GB free space, you could try mounting the drive and running
dd if=/dev/zero bs=512 count=2048 of=/tmp/tempzero or some other file. If you know more about the optimal block size for fastest writing to your drive, you can use that for the bs value (in kilobytes) and set the count to whatever gets you the filesize you want. Then you can use that to get a better estimate without losing data. It will just create a large file that contains zeros.
With a partition of +100 GB, Acer Aspire 5750G, external sata hdd, usb 2, 5400rpm:
xxxx@acer-ubuntu:~$ sudo dd if=/dev/zero of=/dev/sdb2 bs=8M [sudo] password for xxxx: dd: writing `/dev/sdb2': No space left on device 12500+0 records in 12499+0 records out 104856551424 bytes (105 GB) copied, 2846.87 s, 36.8 MB/s
xxxx@acer-ubuntu:~$ sudo dd if=/dev/zero of=/dev/sdb1 bs=8M [sudo] password for xxxx: dd: writing `/dev/sdb1': No space left on device 6579+0 records in 6578+0 records out 55183409152 bytes (55 GB) copied, 1497.23 s, 36.9 MB/s
I'm guessing, but my guess is that it would depend on the drive controller, the controller on the motherboard, and what else is soaking up CPU/IO.
My guess, on the order of hour or hours. Days seems long. Depending on how your machine is set up, running both at the same time may actually slow things down if you create contention for the drive controller. Even though you're pumping out zeros, nothing in your drive knows that and it needs to write every byte.
If you're just erasing the drives, a great tool to use for parallel throughput is DBAN in simple erase mode. It's available as an ISO and basically does the
dd if=/dev/zero command for you on the drives you select.
It should take 2-5 hours. Your bottleneck is the disk, not the RAM, the CPU, the cables or controller configuration. Unless you have a very old computer, like an original Pentium, your CPU and memory are way faster than the hard disk's spindle speed, as are your SATA cables. Cache does not even come into play because you are zeroing the drive (unless you have 1 TB of cache).