I am a software developer by trade and a linux geek by calling so it is not surprising that my family assumes I am the person to call for technical support on their Windows box. Just the other day I got a bizarre call dealing with an external USB drive. A family member who shall remain nameless had bunch of data strewn across several 1TB external devices. This is usually a good idea, in case of a hardware failure. Of course it quickly becomes a bad idea if the failure affects the terrabyte drive itself and it turns out that this data is not backed up anywhere else.
Redundant copies of your data – this is the only way to go. Hard drives fail – it is not a question of “if”, it is a question of “when”. Remember that folks. Never trust your hard drives!
The external device looked intact. The owner swore up and down that it was never dropped, submerged under water, rinsed or put in the microwave. But you know how it is – I bet at least one of these things did happen to the device – presumably the first one. Still, that did not seem to be the cause of the failure.
When the drive was connected to the computer, it took a really long time to show up in My Computer. When it finally did, Vista did not display that neat little capacity bar. When you right clicked on it and tried to check properties, the OS reported that the drive has 0 bytes of free space, and 0 bytes of total capacity.
When you tried to access it, an error message would pop up saying:
H: is not accessible. Parameter is incorrect
Not encouraging. I wasn’t very positive about prospects of data recovery from this drive. I formed a plan in my head:
- Run chkdsk on this machine if possible
- Plug it into my laptop and see if Linux can see any data
- If all else fails, give it a Viking funeral
Running the Check Disk app from the Properties menu did not work. I got another error message saying the disk is not accessible. Curiously enough running it from command line, did work. In Vista however, you need to remember to run it as an Admin.
- Type in cmd in the Start Search box
- Right click on cmd.exe that shows up and choose Run as Administrator
- Run chkdsk command on the faulting drive
I used the following line:
chkdsk /F /R /X H:
Make sure you substitute H: which whatever letter your drive is using. That’s it. The scan itself took several hours – I don’t know how long exactly – I ran it overnight and went to sleep. When I woke up, the drive was working fine again. I unmounted it, mounted it again and it was running like new.
If you ever see this problem happening on your external drive, try chkdsk before you give it the Viking funeral (cause, you know – you always give hard drives Viking funerals). You have to burn it and drown it to make sure people don’t try to recover your pr0n from it.
It’s either that or disassemble it, take out the cool magnet and hang the platters on your lamp or something.
Yes, I know, I know. Yet another dry and boring HOWTO post. Tomorrow I’ll post something more entertaining… Maybe.