Steve's Digicams Forums

Steve's Digicams Forums (
-   Memory Cards, Microdrives, Card Readers (
-   -   SD card - soft or hard error ? (

uny Feb 14, 2010 10:00 PM

SD card - soft or hard error ?
I've read various posts and have a similar problem with some differences.

1) SD card 512mb had been working for years. Could be used in camera & on card-reader on PC. I would always insert card into PC card-reader, it would appear as a drive-letter (disk 'E') and I would 'copy' the files to my PC (disk E to C) using WinXP.

2) Had not used SD card for a few weeks, when I inserted in camera it said "memory card error" on a black screen. Tried reinserting, also tried in a diff camera - same problem. I put in my PC card-reader, it would not even appear as a drive letter. It is as if it was not there, did not exist.

3) I tried Photorec win 6.11.3. It did recognize and did see my card. However, instead of seeing a 512mb card, under "Disk/dev/sdb" it showed 2199GB/2047GB <RO> Generic USB SD Reader" and under partitions showed "No Partitions". My hard-disk was shown correctly as 250GB/ 232GiB.

Since it did not recognize it properly, I was not sure what to do.

I still tried to see if Photorec would see anything on SD card. So I scanned it from "Start 0, End 4294967294". Under 'sectors' it showed "[Whole disk]". Scan took 2:15hr (pass-0). While scanning the SD-card it kept saying 'errors'... I continued but I figured nothing would be found.

I let it run, to next pass, etc... When I came back it said "0 files saved. Recovery completed. Error reading sector 0".

Does this mean everything is lost on card?
If first sector is blank, is card still useable?
Any way to dertermine if is it simply a soft error or something physically wrong with card?

Thanks for all your help.

TCav Feb 15, 2010 2:10 AM

Sector 0 is the only sector that can't fail. If it does, the card is unuseable, and there's nothing you can do to bring it back.

uny Feb 15, 2010 10:34 AM

OK. Thanks for feedback.

So this means that this card is "fried" and can't be used anymore?

I thought that if Photorec could 'see' the SD-card, that it could still be reformatted, etc... ?

Thanks again, A.

JimC Feb 15, 2010 10:57 AM

Not necessarily.

If you're seeing "hard errors" (which you are), a program like photorec may have issues reading the data. It sounds like the MBR on the card may be corrupted, too (which is where things like the partition table are stored). No big deal if the card hasn't completely failed yet and the hard errors are still intermittent (you may still be able to recover some images from it).

Your best bet is to use a linux utility like ddrescue (designed to recover data from failing drives).

I'd probably download SimplyMEPIS 8.015 (a Linux distro that can run from a CD). It's got ddrescue and photorec on it. You can get it from the link in this press release. I'd probably use the 32 bit .iso for best hardware compatibility. Basically, you burn the .iso to CD using a tool that knows how to do that (for example, the free version of DeepBurner). It's the second download on this page:

Then, reboot your PC into it (making sure the CD is your first boot choice in your BIOS). Use username demo which has a password of demo when you get to the login screen. Then, you're running linux from a CD.

Then, make a copy of the card using ddrescue (writing to an image file that's an exact copy of the card), and use photorec to recover any photos from the created image file. ddrescue is smart enough to make multiple passes (since read errors are often intermittent with a card that has a component problem) when you use a log file parameter with it. You can do things like let a card cool off and make another pass (where it will only try to read sectors that weren't read OK so far with subsequent passes). Some failing cards work better when cool, and some work better when they get warmer.

See my posts at the bottom of this page for how that works:

If you want to give it a try, just let me know when you are running in it and post what you get with these commands after you insert the card in a reader (open a terminal program, and you'll find one in the menus labeled "Terminal Program - Konqueror"). Then, I'll let you know what commands to use from there. You'll find Firefox in the menus so you can copy and paste the results you get into a forum post. Press enter after each one of these commands and use root as the password when prompted for one when running from a live cd:

fdisk -l

TCav Feb 15, 2010 11:26 AM

If the Master Boot Record (MBR) is currupt, then yes, you might be able to recover some stuff off the card. But the message states "Error reading sector 0". If Sector 0 is bad, then recovery utilities can't even find out the capacity of the card, so they won't know when to stop looking for data.

What you might want to try is OntrackŪ EasyRecovery™ Lite. It's $89 but is available as a trial download; you can use it free for 30 days and recover 1 file. If you can recover something, anything, then you have an incentive to buy the product.

... but I don't think you will.

JimC Feb 15, 2010 11:31 AM

It doesn't make any difference. You can determine the size of a card and put in the appropriate data for it if you want to recreate the MBR using a utility like testdisk and write it to the image file, which is mountable, just like a real drive (and testdisk is also on many linux live CDs like mepis). ;-)

But, you usually don't even need to do that (as photorec will determine what it needs to know by examining the data in the image file, even without an MBR, as long as it doesn't see hard errors).

I've had drive failures with the MBR unreadable and managed to recreate everything on a new drive. No big deal (as utilities like testdisk can determine where partitions start and end and recreate the MBR and partition table for you).

TCav Feb 15, 2010 12:04 PM

I absolutely 100% agree.

But "Error reading sector 0" doesn't usually indicate a currupt MBR; it usually indicates a failed storage device.

JimC Feb 15, 2010 12:13 PM

Most programs have problems reading a device with a failure of the first sector, as they don't handle hard errors well.

That's where a program like ddrescue comes in. You can start those programs anywhere you want to on a drive, even reading backwards with them if you want to (plugging in values for what sector you want to start and stop in, adding parameters like sector size, etc.). Again, no big deal if the drive still has readable areas with data you want to retrieve.

JimC Feb 15, 2010 12:28 PM


I first became aware of it when I slipped and fell on a PC while it was in the middle of defragging a drive under Windows. That was a *huge* mistake (knocking the PC over while it was writing to the drive).

It messed up the entire first part of the drive (probably when the heads slammed into the platter).

Unfortunately, I did not have a recent backup of the drive. I went out and bought another drive, and tried *many* solutions to copy from the old drive to the new drive.

None of the solutions I tried at first would work with it (partimage, dd, gparted, Acronis True Image, HDClone, g4l, PC Inspector Clone Maxx0, XXCopy, EaseUS Disk Copy, CopyR.dma, CopyWipe and more). They all either refused to run, gave up after too many errors, or simply appeared to be copying when no data was saved to the destination drive.

Then, I tried gnu ddrescue. What a relief. It managed to copy my source drive when nothing else would, despite *lots* of errors on the source drive, including the first sector on it.

Since then, I've been absolutely hooked on using it. I was so impressed, I even asked Warren (the author of SimplyMEPIS) to include it on the Mepis CD (and he complied, and it's been preinstalled in Mepis since then, along with photorec and testdisk, which I also asked him to include).

ddrescue is a super utility (similar to dd in that it can make a sector by sector copy of a device, without worrying about partition types, etc.), but better because it also handles hard errors, automatically adjusting read sizes into smaller and smaller areas to try and recover more data, making multiple passes as desired (only copying data that has not been read OK with subsequent passes, filling in the blocks in the destination image file or device).

A similar program is dd_rescue (not the same as gnu ddrescue, which usually has a package name of ddrescue in most linux distro).

You can also find helper programs for dd_rescue to do things like start and stop at a given sector, make x number of passes, etc., etc.

But, gnu ddrescue handles those types of problems with ease, doing much more of the work without helper programs needed to start and stop the read process, using different block sizes to more efficiently read a drive with more errors on it (larger block sizes when you have more sectors in a row readable and smaller block sizes when you have sector issues and need to read in smaller increments to read an area without any hard errors before moving on to another one).

So, I usually use gnu ddrescue instead (the one already included on the SimplyMEPIS Live CD now, but you can also install dd_rescue if needed with one simple command if you have an internet connection)

JimC Feb 15, 2010 12:43 PM

I even use ddrescue for backups now, making a full disk image copies of my drives (using a yyyymmdd date format to name the backup images). That way, in the event of a drive failure, I can restore the image file created to a new drive.

ddrescue is going to handle any errors encountered making a backup much better than a typical disk image backup program (Acronis True Image, etc.), or other sector by sector type disk imaging utilities that are not expecting hard errors when performing a copy of a drive.

All times are GMT -5. The time now is 12:38 PM.