What is the fastest way to mark bad sectors *without data recovery*?
After some deep digging, Easeus Partition Manager Home Edition has a feature called Disk Surface Test, which apparently reads the blocks off a drive and spots and marks the bad sectors, and based on what I've found so far, it makes no attempt to recover those blocks. More information on this page about the software's disk surface test: http://www.partition-tool.com/easeus-partition-manager/disk-surface-test.htm and here for download link: http://www.partition-tool.com/landing/home-download.htm (big green button at bottom of page).
Specifically, it says on the disk surface test page:
When it finds bad sectors, it will mark those sectors as bad with red color so that the system knows not to use them. It may allow them to be read, in case the data stored on the bad sector is still accessible, but they cannot be written to.
so I think this may just be what you're looking for.
Linux includes a utility to do this for these bad blocks.
/sbin/badblocks -sn -b512 /dev/sda
For maximum speed, make sure the number after -b
matches your disk sector size. 512 is a safe default.
-sn
means a progress meter will be displayed and a non destructive read-write test will be performed.
As every block on the disk will be read and then written to, the drive's firmware will make note of any errors and will reallocate bad sectors accordingly.
If chkdsk /r
hung for hours, then your drive is likely severely damaged.
Assuming all of your data is backed up off the drive, perform a full zero/format of the drive. This will write to every sector of the drive, thereby reallocating any already-detected bad sectors. However, I would anticipate that the zeroing operation will hang as well, as there are likely hundreds/thousands of bad sectors already, and that number will rapidly increase. Your drive is dying, and it will likely be completely dead soon. You aren't going to get much further use out of it.