0

I have a 1TB external HDD, which was formatted with FAT32. I decided to format it with ext2. Then I noticed that it has bad sectors, and I was unable to do the format with Ubuntu's Disk Utility. So I used fdisk and mkfs with the -c option to format it. This seemed to go through without errors (except for the bad sectors found), but obviously I used some wrong command, because there was no partition visible after it ended. The whole process took up 3 weeks, 350 hours out of them for the error checking alone. Also, at some time I noticed that I'd used mkfs.ext3 instead of mkfs.ext2, but I didn't want to interrupt and start again.

Now I have this HDD without a partition, and decided to make a ext2 partition on it using the Disk Utility. It started doing something, but after an hour I interrupted it, because I don't want to wait another 3 weeks (it doesn't even show an estimation for the time needed, or a progress bar). Then I plugged the HDD into a Windows 7 laptop, thinking that I could format it as NTFS or even FAT, whatever goes. But it doesn't get its own drive letter in Windows. I can see it under the Device Manager, but there is no option there to format the thing.

Any ideas how to get the disk to work? Possibly without having to wait for weeks and at the end noticing that it hasn't worked? I don't care any more which filesystem it gets (but if I have a choice, it will be ext2).


Edit

I know that usually bad sectors appear when a disk is old and then multiply uncontrollably. But as this is a new (< 1 yr) external drive, I guess that it is just some mechanical damage and they won't multiply. Backup restoration wouldn't be any problem, as there is no OS install on the disk, just my music and film collection, so if the thing fails, all I have to do is to buy a new HDD and copy the data from the backup HDD.

I think that all my "backup" sectors are used up, but I thought that it is possible for a drive to just ignore bad sectors, so if I have 1 GB worth of bad sectors, it will continue to function as a 999 GB drive instead of a 1000 GB drive. Is this possible, or am I mistaken?

smartctl doesn't work with the disk. I get the output

 rumtscho@bradbury:~$ sudo smartctl --all /dev/sdd -T verypermissive
smartctl version 5.38 [x86_64-unknown-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

Device: WD       10EADS External  Version: 1.75
scsiModePageOffset: response length too short, resp_len=4 offset=4 bd_len=0
>> Terminate command early due to bad response to IEC mode page

Error Counter logging not supported
scsiModePageOffset: response length too short, resp_len=4 offset=4 bd_len=0
Device does not support Self Test logging
1
  • Thank you for your answers. You are both right, the drive still has warranty, so I will be sending it back to WD. Accept goes to Dylan B. because the info about smartctl could come in handy some day.
    – rumtscho
    Aug 2, 2010 at 20:13

2 Answers 2

3

If your drive is showing bad blocks, it's probably, for all intents and purposes, borderline paperweight-status.

All modern drives (and their billions of sectors) will have some inevitable faults, which is why all drive manufacturers provide a sizable chunk of unused sectors for drives to do a firmware-level remapping to in the event of one or two coming up bad. You can use smartctl under Linux to take a peek at this, and run other online and offline integrity tests. smartctl --all /dev/whatever will spit out tons of diagnostic info, and smartctl --help gives all sorts of info on the many test types.

However, if your drive is showing significant numbers of bad sectors (which I assume it is, if Windows can't see it..), it's probably better, and definitely safer, to spare yourself the misery of backup restoration later on and go get a new drive.

If you really still insist on hurling caution into the wind, there are some hazardous tricks you can do with hdparm's --write-sector option, which can force a firmware-level remap by writing all zeroes to some busted block.

Failing that, another month or so of bad-block checking mkfs might be the only way to get it working again, and you'd better hope no new bad blocks come up later on (which is probably likely)

2
  • Thank you for suggesting smartctl. Sadly, it doesn't work with my HDD, see post edit for details.
    – rumtscho
    Jul 31, 2010 at 14:18
  • Ah, yeah, I misread. smartctl doesn't work with (I assume) USB external drives; SMART commands aren't passed over properly. If your drive is as new as it is, it's quite possibly still under warranty. That'd be the best route to take, if possible -- failing that, you'll have to fire up mkfs with the -check option again and just wait. You definitely could have gigs worth of sectors blocked off at the fs level, if you really wanted to wait that long & were certain more won't pop up. Either way, consider this drive temporary storage at best; future silent corruption sounds very likely.
    – Jessie
    Jul 31, 2010 at 14:39
2

I know that usually bad sectors appear when a disk is old and then multiply uncontrollably. But as this is a new (< 1 yr) external drive, I guess that it is just some mechanical damage and they won't multiply. Backup restoration wouldn't be any problem, as there is no OS install on the disk, just my music and film collection, so if the thing fails, all I have to do is to buy a new HDD and copy the data from the backup HDD.

If this is a new drive, it is almost certainly under warranty, and that warranty should definitely cover this issue unless you went at the drive with a hammer or ran it over with a truck.

Regarding "just some mechanical damage", we are talking about a high-precision piece of equipment that includes a precisely shaped platter that spins at least 5,400 times every second on precision bearings, with a very sensitive head that is fractions of a millimeter over the (hopefully pristine) surface. If there is physical damage that resulted in errors, that drive is toast.

Still, kudos on having a backup.

I think that all my "backup" sectors are used up, but I thought that it is possible for a drive to just ignore bad sectors, so if I have 1 GB worth of bad sectors, it will continue to function as a 999 GB drive instead of a 1000 GB drive. Is this possible, or am I mistaken?

It is possible, but very unlikely. If you don't want to return the USB drive under warranty, I'd suggest removing it from the enclosure and seeing what smartctl says with the drive connected directly. I'd be surprised if smartctl was at all pleased with the state of the disk.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .