When you overwrite the disk, you say you should use dd if=/dev/random, but the reason why this is much slower is because /dev/random blocks. Use /dev/urandom because it doesn't block -- Before you ask, yes this is still secure.
Or you can use dm-crypt and create a temporary container with a random key to wipe it. This will be a bit faster than the above. See the Arch wiki for details[1]
[1] - https://wiki.archlinux.org/index.php/Dm-crypt/Drive_preparat...