2

I've got a 3TB Western Digital hard drive. It's pretty old, but one day, he suddenly stopped reading the files and he was slowing down the whole PC.

I decided to completely format that drive, and you may wonder, the formatting process was going pretty fast (at its maximum 150 mb/s writing speed).

When I saw that amazing speed, I realized that maybe he is not THAT dead, and he may be useful in future, but how?

Is it possible to do something on software level, that all bad sectors will be moved and become unreachable for Windows at the expense of lowering capacity of the whole hard drive?

By this, I mean next. Right now, if I open my explorer, I'd see that there's 2.7 Tb available, I won't be against even if this number would be lowered down to 2.4-2.5 Tb in total, just make that section be ignored for Windows and all other programs. Is it possible?

Thanks in advance.

Giacomo1968
  • 58,727

2 Answers2

1

The bad sectors are physical "places" on your HDD so they cannot be moved.
In NTFS they are forming clusters and for drives up to 16TB cluster contains 8 sectors or 4KB.
Cluster is the smallest amount of space, the operating system can manage, so if one sector is bad, the entire cluster is wasted.
By design, NTFS is using technique called Cluster Remapping:

When Windows 2000 detects a bad-sector, NTFS dynamically remaps the cluster containing the bad sector and allocates a new cluster for the data. If the error occurred during a read, NTFS returns a read error to the calling program, and the data is lost. If the error occurs during a write, NTFS writes the data to the new cluster, and no data is lost.

You can also proactively run file system tool chkdsk with switch /r so File System will make a note of the bad sectors before attempting to write data to them.

It sounds all nice but here comes the plot twist.

Hard drive's firmware is also tasked with detecting bad sectors, and if it will find one, it is going to put it on the list, and remap its logical location to spare part of the HardDrive. That bad sector will not be visible to the operating system.
So what that means?
If your Operating System (or file system to be exact) can see bad sectors, it means the firmware's list is already full, and you cannot trust this hard drive with your data.

Having that out off the way, if the HDD doesn't have other mechanical issues, bad sectors are usually caused by number of writes in single area, which most of the time is congested at the beginning of the hard drive.
If you wish to try to squeeze more life from your HDD before allocating budget for the replacement, you can simply skip first 60-100GB. The exact amount will depend on how you were using the drive. It is not scientifically established value, but from my experience in data recovery, this is usually area where I find most bad sectors in typical home/small office computer. It has to do with the fact that beginning of the hard drive stores operating system and programs; these files are often modified and deleted; then scheduled disk defragmentation runs moving fragmented files closer to the beginning of the drive.

During installation process, when asked to select a partition:

  1. Select unallocated space and create first partition of the size you want to skip
  2. Select remaining unallocated space and choose all remaining space. Installer will create other necessary partitions for you.
  3. When confirming, you will receive warning that partitions are not in recommended order, which you can simply acknowledge.
  4. When installation process is over you can open Disk Management and you will see RAW, unformatted partition.
  5. Now you need to run chkdsk /r c: to mark any bad sectors remaining in your working partition.

REMEMBER, YOU CANNOT TRUST THIS HDD WITH YOUR DATA, IT IS VERY LIKELY IT WILL CONTINUE FAILING

RomanK
  • 266
  • 1
  • 9
-1

At first, boot from a diagnostic CD like "SystemRescueCD", which can be copied to an USB stick, if you prefer. At next, start smartctl on you hard disk and start a short selftest. Look of the report saved on the disk. If no severe errors are reported, try a long selftest and examine the report.

See which disk are on your system:

smartctl --scan

Display short info:

smartctl --info /dev/sda (replace by the device you are working on)

Display stored info:

smartctl -a /dev/sda

Run short selftest:

smartctl -t sort /dev/sda

Display the report:

smartctl -l selftest  /dev/sda

...etc. Please see the man pages of smartctl.

Please progress step by step. If severe errors are reported, the disk is probably at the end of life. Discard them. If the long selftest terminates without severe errors, you can try the "badblocks" utility. Please read the man pages !