What to do if Disk Utility shows bad sectors pending in SMART?

I have 12.04 32bit installed on my hard drive. Ubuntu is the only OS. I recently installed it after getting rid of Windows 7. When I run Disk Utility under SMART Status it says "disk has a few bad sectors", so I clicked on View SMART data and run self tests. I run the extended SMART self-test and it only takes 5-10 seconds for it to stop and reads Self-Tests: FAILED (Read), Bad Sectors: 1 bad sector, Overall Disk Assessment: Disk has a few bad sectors.

enter image description here

Is this something I should be worried about?


At this point in time I wouldn't. Hard Drive manufacturers, normally pack spare sectors in the drive just for situations like this. Keep an eye on it, and always have a backup of your data handy. Also I would suggest that you run the manufacturers diagnostic tool, and that can be acquired form the drive manufacturers website. Once you do that, and it gives you an error code, and providing htat the drive is still under warranty, then call the manufacturer,and get it replaced.

Important note to keep: Disks that start with 1 bad sector, will probably get worse. I can't stress enough the importance of a backup.


Be worried when "pending" bad sectors start showing up in SMART

Modern drives handle "simple" bad sectors automatically and transparently, by remapping them to one of the spare sectors allocated for this purpose without getting SMART's CURRENT_PENDING_SECTOR involved.

Once you see that value go above zero, it usually means one of two things:

  • The drive has (or will soon) run out of the spare sectors, leaving the "bad sector" marked as unusable
  • The bad sector was not "simple", and could not be read/corrected in the first place even if there were plenty of spare sectors left.

Either of those are not good for the future of your drive. You can check the exact errors by looking at the drive's internal log with smartmontools; use smartctl -l xerror /dev/sdN to get the extended error log (or -l error for the standard log).

If under warranty, and you have a spare drive/space to back the data up to, I would consider having this drive replaced ASAP.


Way to give your HDD some more life

One thing I looked into a lot on the net and found out myself, is what to do when you start getting some "bad sectors", a problem I came across with my HDD which recently caused boot failure just out of nowhere and received the "treatment" I explain.

1.Backup your data

2.Try to give your HDD an orientation. I mean, tell ALL its little magnetic parts (sorry I am not an engineer) to have the same polarity (seems they get a little crazy after some overwrites...) Best and easiest way to do that is by a zerofill, which makes your entire disk like 000000000000..., but there are also some Windows apps like DRevitalize that do pretty much something like that in not so uniform a way (and without losing data supposingly-never tried it to be honest)

You can do a zerofill by a slow format (device, not just partition) in Ubuntu's Disks GUI, or through your terminal, using the "shred" command: sudo shred -n 0 -v -z /dev/sdX (where sdX the disk you want to erase) and probably in a million other ways, I don't think it matters that much how you do it.

I tried a 2-pass zerofill on a disk with 250 bad sectors and 75 more "pending". It eliminated the "pending" sectors somehow and significantly improved access times for some 2500 more sectors, from "<500ms" to "<150ms" (surface test with HDDScan). I guess some of those would soon become "bad" and remains to see if I can expect a time gain of days, weeks or more...