损坏的 SD 卡(严重卸载?)如何修复?

Jes*_*rer 12 filesystem sd-card 12.04

首先,我在带有内置读卡器的笔记本电脑上使用 Ubuntu 12.04。

我的 HTC Desire HD 手机随附了sandisk 8Gig micro sd 卡。

不幸的是,我通过连接到手机的 USB 电缆将它安装到工作中的 Windows 计算机上,并且没有“安全地移除硬件”。这不是我第一次没有从 Windows 中“安全地删除”它,每次我不小心这样做时,我都必须重新启动手机才能再次访问 SD 卡。

不过它肯定已经磨损了,因为现在我的手机根本无法识别该卡,当我将它放入笔记本电脑的读卡器时,我在 /var/log/syslog 中收到以下错误

Apr  4 21:17:59 jesse-laptop kernel: [12665.532025] mmc0: error -110 whilst initialising SD card
Apr  4 21:18:00 jesse-laptop kernel: [12667.192024] mmc0: error -110 whilst initialising SD card
Apr  4 21:18:02 jesse-laptop kernel: [12668.860020] mmc0: error -110 whilst initialising SD card
Apr  4 21:18:04 jesse-laptop kernel: [12670.532020] mmc0: error -110 whilst initialising SD card
Run Code Online (Sandbox Code Playgroud)

我在谷歌上搜索了这条消息,但找不到任何解释它含义的地方。我发现的所有关于类似错误的帖子都是关于让读卡器工作的,但是当我插入不同的 SD 卡时,我的读卡器工作正常。

Apr  4 21:26:35 jesse-laptop kernel: [13182.192121] mmc0: new SDHC card at address b368
Apr  4 21:26:35 jesse-laptop kernel: [13182.195849] mmcblk0: mmc0:b368       29.8 GiB 
Apr  4 21:26:35 jesse-laptop kernel: [13182.197931]  mmcblk0: p1
Run Code Online (Sandbox Code Playgroud)

所以我知道问题在于损坏的卡而不是读卡器。

问题似乎与初始化卡有关,因为它没有出现在 /dev/ 下我能找到的任何地方。当我插入工作的 SD 卡时,它显示为 /dev/mmcblk0,分区为 /dev/mmcblk0p1。

毋庸置疑,我无法格式化卡或运行任何恢复软件,直到我可以将它显示为设备。

编辑: - 我通过查看此处提供的系统日志相关部分发现,当我第一次插入卡时,错误与现在不同。我真的不明白这些错误中的任何一个。我猜这张卡一直处于预期转移的状态(如果可能的话),但它没有收到。现在它不能被初始化(不管这实际上意味着什么)

非常感谢有关此错误的含义和/或如何从我的 SD 卡恢复数据的任何帮助。我的大部分重要数据都已备份,但有一个笔记应用程序(在我的手机上)没有备份,我非常想检索这些数据。

PS 工作卡和损坏的卡都是 micro sd,我正在使用卡适配器将它们插入我的电脑。

PPS 我已经上传了我的 /var/log/syslog 的带注释版本,这里只有相关部分,还有完整的 syslog 在这里

zx4*_*485 7

由于过早移除,该卡似乎已损坏。这些消息表明卡中的控制器故障或坏块。后者可能是可以恢复的。试试这个来恢复:

  • 插卡
  • 卸载它umount /dev/mmc0(或使用任何安装的驱动器)
  • fsck -v /dev/mmc0
  • 安装它

如果这没有帮助,您必须使用mkfs. 如果卡仍然无法使用,则控制器的硬件可能已损坏无法恢复。