possible to repair damaged hard disk drive?

luv2liv

Diamond Member
Dec 27, 2001
3,500
94
91
my PS3 installs were failing with errors 80010038. that error relates to hdd only.
using Crystal Disk Info, i see the drive is marked as "caution"
is there any way to repair it? i've tried Windows built in tool. however, it is stuck near the end and cant go further

screenshot of CDI:
http://www.kerrsbuilding.com/temp/hdd.gif
 
Last edited:

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
If you can salvage any data, you need to do so by not using the drive until you have a replacement, and then only trying to do a clone to the new drive.

That shows 72 remapped sectors, and 27 sectors waiting to be dealt with. I've never seen pending that high, ever, before.

The HDD is toast, but you may be able to salvage data, if your use of chkdsk didn't ruin it (in the future, remember to never do a scan and repair without a backup of the damaged drive, if you want to get data off of it).
 

luv2liv

Diamond Member
Dec 27, 2001
3,500
94
91
oh man, i was hoping CDI can repair the HDD so i can use it until i see smoke coming out. right now, the ps3 refuses to work for new game installs. but working fine for old games that were installed already. thanks for letting me know
 

killster1

Banned
Mar 15, 2007
6,205
475
126
you see people on youtube ripping open the hd and changing the spindal to a new drive.. i really didnt think that would work.. but they are touching them wiping them off etc.. i guess it does work? i didnt look at it to much etc but def will try on a small shit cheap drive one day for fun if need to.
 

code65536

Golden Member
Mar 7, 2006
1,006
0
76
Well, it depends on what you mean by "repair". But for what you want to accomplish, the answer is yes.

The drive does have the ability to "repair" itself. That is, use its reserve of spare sectors to remap and thus replace bad sectors. And as you can see, this has already been going on, with 72 confirmed bad sectors remapped and another 27 potentially bad sectors waiting in limbo.

I briefly explained what a pending sector in this post a few months ago. Long story short, you'll want to force the drive's firmware to resolve those pending sectors--get the drive's firmware to test those sectors, and if they're good, return them to service, and if they're bad, get them remapped with a spare sector. And the way to do this is to do a full format of the drive, forcing the drive to write to every sector. This will obviously destroy all data on the drive, and it will also mean that all the other sectors are write-tested (so you may discover even more bad sectors).


Now, while you can do this, I generally don't recommend it. I prefer peace of mind when it comes to my data, so my policy is that if a drive has a confirmed bad sector (i.e., a reallocated bad sector) (a pending sector is okay, as long as it resolves, and doesn't resolve into a reallocation), it's time to replace it. And if the drive is still within warranty, you should definitely get it replaced under warranty. But if warranty is expired, and I'm okay with potentially losing data on the drive, then I might make an exception.

The other thing to be aware of is that data that was stored in one of those bad sectors is gone. The most you can accomplish through recovery is all the data that wasn't sitting in a bad sector. So if your game console is having problems, it's likely that some part of the data that it required happened to reside in one of those pending or reallocated sectors, and now that data is corrupted. So no matter what happens, you'll probably have to reinstall everything (not sure how that works with a game console, as I've never owned one).


So... if you do want to "repair" this drive and keep using it "until smoke comes out", here is what you need to do:

0) Be aware of what you're doing. That is, a drive that has already developed bad sectors is not a healthy drive. There's a chance that the situation has stabilized, and it won't get any worse. But there's also a chance that new failures will develop. Just know that you're taking a risk with the data that you're putting on the drive. (I'm guessing that you're okay with this because it's just a game console drive and not your drive of precious irreplaceable memories?)

1) Recover any data from the drive that you don't want to lose.

2) Wipe the drive and do a full format (or low-level format).

3) Verify that the pending count is now zero, and take a look at the reallocated sector count. If there were no other errors found, the raw value should be anywhere between 48 and 63 in hex (72 to 99 in decimal). It might be a bit higher if the drive's firmware discovers more problems during the format, and that's okay. A drive has lots of spare sectors; I'm not sure how many since they don't put it in spec sheets, but it's quite a bit more than 99. The SMART score (not the raw value) for the reallocation count is useful here. Right now, your reallocation score is still 100 (out of 100), and your drive is supposed to signal failure when that score drops down to 50.

3) Reinstall and restore your data, however that works.


Oh, and never physically open a drive.
 
Last edited:

code65536

Golden Member
Mar 7, 2006
1,006
0
76
That shows 72 remapped sectors, and 27 sectors waiting to be dealt with. I've never seen pending that high, ever, before.

Then you've never seen many drives. ;)

A drive has tons of sectors. Take the capacity and divide by 512 bytes (or 4096 bytes if AF)--you're looking at hundreds of millions of sectors. 100 sectors is nothing. If there was a defect like a tiny scratch, you'll be looking at maybe hundreds of thousands of bad sectors, so 100 sectors is microscopic.

I've had a drive that was in a computer when there was a brief power surge, which I think caused some magnetic flux in the head, thus corrupting a patch of data--I think it was something or the order of 10 thousand pending sectors or so. Every single one of those pending sectors, when write tested by the drive, were cleared and put back into duty because there was no physical fault to begin with (just random data corruption from the power blip).
 

code65536

Golden Member
Mar 7, 2006
1,006
0
76
Not in that kind of shape. I've seen bad sectors sky-high, but never more than single-digit pending, even on drives obviously on their death beds.

Pending just means "encountered read error, but have not yet tried to write to confirm that the sector is bad". Depending on the specific circumstances of the problem, a high pending would be expected in some cases. In my personal experience, I've actually seen more cases of large pending counts than I have of large reallocated counts. It all varies.
 

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
Given your first anecdote, I wonder if it might have to do with local power issues? Surges are a fairly rare problem, here, but tend to take things out completely, if they're noticed at all, FI. Or, possibly, how it's used. If the pending sector is read, it should be remapped, or rewritten to, either way reducing that count by 1. A chkdsk or virus scan could very well turn them into remapped or OK sectors in short order, if they hold any live data.
 

code65536

Golden Member
Mar 7, 2006
1,006
0
76
If the pending sector is read, it should be remapped, or rewritten to, either way reducing that count by 1. A chkdsk or virus scan could very well turn them into remapped or OK sectors in short order, if they hold any live data.

The fundamental problem is that the drive head doesn't have eyes. It can't look at a sector and say, "that sector looks bad". The only input that a drive head receives is the magnetic state, and the only way in which the head can determine if there's an error is if the CRC of a series of magnetic states doesn't match.

That's why read errors are always "cyclic redundancy errors". But a CRC error could result from the sector being bad, or it could be a good sector containing corrupted data (or a corrupted CRC), like if a photon of cosmic radiation happens to flip a bit. So how can the head tell if a sector is bad or if it's just corrupted data? One way is to write data to it--if it can read what it wrote, then the sector's good. Otherwise, the sector's bad. But writing will destroy whatever is in that sector (which the user might prefer to recover instead), so the drive writes only when it's instructed to write, and if no writes are ever issued for that sector, the sector could remain stuck in pending indefinitely.

(There are other ways a drive determines if a sector is bad--if, for example, a read fails and subsequent attempts to retry reading that sector produce different, fluctuating results. But writing is a sure-fire way to resolving a pending sector.)
 

Cerb

Elite Member
Aug 26, 2000
17,484
33
86
That's why read errors are always "cyclic redundancy errors". But a CRC error could result from the sector being bad, or it could be a good sector containing corrupted data (or a corrupted CRC), like if a photon of cosmic radiation happens to flip a bit. So how can the head tell if a sector is bad or if it's just corrupted data?
That's the controller/firmware's job. If it can't read the data, the file is gone, something's broken, etc.. If it can read the data after trying for a minute, it should try to test the sector, and remap it if that doesn't work. Both should result in a decrement of the pending sector count, and one will also increment the reallocated count. Both can happen with no user-attempted writes to those sectors, though the results may vary by drive.
 

code65536

Golden Member
Mar 7, 2006
1,006
0
76
That's the controller/firmware's job.
Yes. I never said it wasn't.

If it can't read the data, the file is gone, something's broken, etc.. If it can read the data after trying for a minute, it should try to test the sector, and remap it if that doesn't work.
In my experience, it generally doesn't until I force the a write to that sector. I've had pending sectors that lasted for months (on a file that the OS always struggled to read) before I finally got around to cloning the drive so that I can do a write across the entire drive to resolve it.

Both can happen with no user-attempted writes to those sectors, though the results may vary by drive.
Hmm, maybe different drives have different policies with respect to how they handle this. Or maybe there were other clues that the drive used (e.g., if it gets different fluctuating results from each read, it will know that it's bad without a write test, which wouldn't be something one would expect it was a case of good-sector-with-corrupted-checksum).