it-swarm.cn

如何从损坏的SD卡中恢复数据?

我有一张4GB SD卡,上面有一些家庭照片,需要恢复。当我将卡插入读卡器时,它显示为未知的32MB设备(如/dev/sde),并且无法安装。当重新插入相机(Nikon D60)时,它表示需要格式化存储卡(与将其插入Windows机器一样)。我想恢复卡上的所有照片(全家福之前还有其他照片),因为我不知道我拍摄了多少张照片或它们的确切尺寸(但我相信它们都是JPEG)。该卡应格式化为FAT32文件系统。

哪些Linux或Unix实用程序可用于恢复文件?我可以自己做还是需要专业帮助?

编辑:看来我的读卡器已经以某种方式损坏了卡,使其变得不可读和无法格式化。当我检查另一张完全相同的卡(不保存任何文件)时,它“毁了”第二张。我想再次使用第二张卡,是否有工具可以格式化不知道(或无法正确报告)损坏的卡的大小?

23
user6148

首先,从您使用第二张卡的经验来看,您的读卡器似乎已损坏,现在会损坏插入其中的卡。立即停止使用该读取器,并尝试使用其他读取器恢复卡。如果您的数据非常有价值,请尝试获得质量比底价产品更好的品牌阅读器。

如果存储卡只是部分而不是完全不可读,请首先尝试将存储卡中的内容复制到图像文件中。不要为此使用dd,因为它会在出现第一个错误时停止读取。使用 dd_rescueddrescue 。两种工具都试图从磁盘上获取尽可能多的数据。用法示例(/dev/sdc是与卡相对应的设备;如果您不知道是哪一个,请运行cat /proc/partitions并选择似乎尺寸合适的那个):

ddrescue -dr3 /dev/sdc card.image logfile

由于看起来文件系统结构已损坏(您的操作系统提供格式化驱动器的权限,因为它们看不到有效的文件系统),因此您必须尝试分别恢复文件。幸运的是,图像文件以可识别的标题开头,并且有许多现有的 雕刻工具 可以识别图像: 最重要MagicRescuePhotoRec (来自 TestDisk 的制造商), RecoverJPEG ,...

这些工具大多数都可以在典型的unix发行版上获得。但是,如果您愿意,可以运行 专用发行版 或其他实时CD,包括恢复工具,例如 SysRescueCDKnoppix[〜#〜] caine [〜#〜]

29

PhotoRec来自 http://www.cgsecurity.org/ -免费,开源,易于使用。刚刚从损坏的SD卡中恢复了家庭照片和视频的负载。只需将其解压缩到一个文件夹中,运行该文件并将其指向驱动器即可。

9
user36649

我建议 TestDisk 。我已经成功地使用它来从损坏的硬盘中恢复文件。我通常使用 [〜#〜] trk [〜#〜]SystemRescueCd 之类的发行版。

8
agn

您尚未详细说明如何丢失数据。如果这是一个逻辑删除,并且设备没有写太多内容,则恢复数据的机会很好:显而易见的建议是选择 TestDisk&Photorec 。当然,传统的建议是:对原始设备进行写保护,无论如何,将其暴露在尽可能少的交互作用下。最好的是,dd可以在一些不同的支持下使用,将其拔出并处理图像文件。另一方面,如果主题中的“坏”意味着物理损坏,则情况会变得更艰难,但是您应该尝试所有相同的操作,因为通常一小部分的块变得不可读。特别是在SD上,它具有很高的耐久力。

6
user495100

我使用了testdisk软件包中的photorec。从我的手机损坏的sandisk microsd中恢复照片对我来说效果很好。

2
Samue