Mysterious SD card issue
October 4, 2016 2:06 PM Subscribe
I had been using a Lexar Professional 32 GB SD HC card in my camera until one day it didn't work. I don't know the issue, perhaps it was ejected while writing. Anyway, I paid a smart computer tech to recover my pictures, which he did, except for the mystery (more inside)...
The tech used a $2000 program to recover my photos, which he showed me on his laptop. However, when I took the card home, neither my PC nor my Nikon D7000 recognized that a card was in the slot. So I took it back to the tech, who transferred my pics to another card, so at least I have my pictures. Thing is, the card reads perfectly in his MacBook and his PC, but not in my PC or my Nikon. So I can't even format the card, either in the camera or my PC. It's not a big deal financially, just a mystery I'd like to solve. Why can the tech read the card, yet I cannot, despite having used it routinely in the past?
The tech used a $2000 program to recover my photos, which he showed me on his laptop. However, when I took the card home, neither my PC nor my Nikon D7000 recognized that a card was in the slot. So I took it back to the tech, who transferred my pics to another card, so at least I have my pictures. Thing is, the card reads perfectly in his MacBook and his PC, but not in my PC or my Nikon. So I can't even format the card, either in the camera or my PC. It's not a big deal financially, just a mystery I'd like to solve. Why can the tech read the card, yet I cannot, despite having used it routinely in the past?
weapons-grade pandemonium: ". Why can the tech read the card, yet I cannot, despite having used it routinely in the past?"
The card is going bad and your tech's equipment is either more or less in spec than the hardware you are using. EG: maybe it is supplying a smidge more voltage to the card.
posted by Mitheral at 2:47 PM on October 4, 2016 [1 favorite]
The card is going bad and your tech's equipment is either more or less in spec than the hardware you are using. EG: maybe it is supplying a smidge more voltage to the card.
posted by Mitheral at 2:47 PM on October 4, 2016 [1 favorite]
Best answer: Different operating systems and disk recovery programs implement file system specs in different ways. Some implementations go to greater levels to handle errors (OSes) or ignore them (read-only mode recovery programs).
A program designed to extract maximum data is going to ignore errors that in a normal read-write context (your camera) could cause a lot of data damage.
posted by zippy at 2:54 PM on October 4, 2016 [2 favorites]
A program designed to extract maximum data is going to ignore errors that in a normal read-write context (your camera) could cause a lot of data damage.
posted by zippy at 2:54 PM on October 4, 2016 [2 favorites]
Seconding Zippy: file recovery software ignores errors when trying to recover data, as the idea is to get as much data off the drive before it fails completely, not to try to fix the drive. The SD card is failing, even if it can be read under certain situations; use a different one.
posted by Aleyn at 6:04 PM on October 4, 2016
posted by Aleyn at 6:04 PM on October 4, 2016
Linux and software that accesses the raw data on the device (like the expensive software probably does) are more tolerant of corrupt file systems than Windows. I had an xD card that was damaged/corrupt to the point trying to do anything with it in Windows would lock up Explorer; Linux happily acted as if it was normal other than giving some warnings while mounting it.
posted by Candleman at 6:41 PM on October 4, 2016
posted by Candleman at 6:41 PM on October 4, 2016
Response by poster: Good answers, all. Thanks.
posted by weapons-grade pandemonium at 10:14 PM on October 4, 2016
posted by weapons-grade pandemonium at 10:14 PM on October 4, 2016
Expanding a bit on ignoring errors, a camera storage card is likely to be formatted using the FAT32 filesystem. When an operating system attempts to access a device formatted this way, it will "trust" the file allocation table that says where each file on the device is located: the numeric address of the first piece of the file, the file's creation date and length.
design of the FAT file system
That first piece of the file contains its share of the file's contents along with the address of the next piece of the file. The final piece has no pointer.
An operating system will look at this table of files, and if it is corrupted (like, say, two files having the same start address) might say "welp, this is broken. I'm not going to access it."
A data recovery program on the other hand will take this table as advisory, and may look at the contents of every record on the disk, whether or not it is mentioned in the table, and look at the data in that record to interpret whether it might be an image or a text document.
A common case for recovery is where the user has deleted a file and wants it back. Many operating systems will delete the file by only removing it's entry in the file table. But those data records are still on disk, each bit pointing to the next. If a recovery program can find say the first record of a JPEG, it can then follow that record's pointer to the next piece, and that one's pointer to the next, all the way down the chain. It may not recover the correct file name, but it can still recover the data that makes up the image.
In a damaged disk, you may have missing records in the table, or missing records from the middle of a file. An operating system will prudently not touch these -- it's not designed to work with corrupted data safely. A recovery program will attempt to work around corruption, sometimes to extraordinary lengths (eg looking at records for the characteristic starting bytes of a JPEG image)
posted by zippy at 11:00 AM on October 5, 2016 [1 favorite]
design of the FAT file system
That first piece of the file contains its share of the file's contents along with the address of the next piece of the file. The final piece has no pointer.
An operating system will look at this table of files, and if it is corrupted (like, say, two files having the same start address) might say "welp, this is broken. I'm not going to access it."
A data recovery program on the other hand will take this table as advisory, and may look at the contents of every record on the disk, whether or not it is mentioned in the table, and look at the data in that record to interpret whether it might be an image or a text document.
A common case for recovery is where the user has deleted a file and wants it back. Many operating systems will delete the file by only removing it's entry in the file table. But those data records are still on disk, each bit pointing to the next. If a recovery program can find say the first record of a JPEG, it can then follow that record's pointer to the next piece, and that one's pointer to the next, all the way down the chain. It may not recover the correct file name, but it can still recover the data that makes up the image.
In a damaged disk, you may have missing records in the table, or missing records from the middle of a file. An operating system will prudently not touch these -- it's not designed to work with corrupted data safely. A recovery program will attempt to work around corruption, sometimes to extraordinary lengths (eg looking at records for the characteristic starting bytes of a JPEG image)
posted by zippy at 11:00 AM on October 5, 2016 [1 favorite]
This thread is closed to new comments.
Cards go bad. That's the most likely reason you can no longer use it. If he's set up for disc recovery, that's the most likely reason he can. The ones and zeros details are immaterial really. Clients ask me "Why" all the time. If learning why is immaterial, there's no real sense in actually trying to determine cause.
If it really bugs you, call your tech and ask him.
posted by humboldt32 at 2:34 PM on October 4, 2016