-b
block size, 512 or 4096 unless you have a highly specialised enterprise drive (influences speed)-c
cache size (influences speed)
Safest test, no data will be written however physically damaged disks may be further damaged by continuous reads.
badblocks -vs -b 4096 -c 65536 /dev/sda
Interrupting this with CTRL+C
will be handled gracefully without data loss, however an ungraceful error can occur in IO or in OS resulting in data loss.
badblocks -nvs -b 4096 -c 65536 /dev/sda
This will overwrite all data. Note: Windows may think drives that have been zeroed have damaged filesystems, format on Linux to avoid this.
badblocks -wvs -b 4096 -c 65536 /dev/sda