首先,我在带有内置读卡器的笔记本电脑上使用 Ubuntu 12.04。
我有一张 Sandisk 8Gig micro SD 卡,是我的 HTC Desire HD 手机附带的。
不幸的是,我通过连接到手机的 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
我用谷歌搜索过这条消息,但找不到任何解释它含义的地方。我发现的所有关于类似错误的帖子都是关于如何让读卡器工作的,但当我插入另一张 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
所以我知道问题在于损坏的卡而不是读卡器。
问题似乎出在初始化卡上,因为我找不到它在 /dev/ 下的任何位置。当我插入一张正常工作的 SD 卡时,它显示为 /dev/mmcblk0,分区为 /dev/mmcblk0p1。
不用说,我无法格式化该卡或运行任何恢复软件,直到我能让它作为设备出现。
编辑:- 通过查看我的系统日志我发现相关部件可在此处获取我第一次插入卡时的错误与现在不同。我真的不明白这些错误。我猜卡处于预期转账的状态(如果可能的话),但没有收到转账。现在它无法初始化(不管这实际上意味着什么)
任何有关此错误含义和/或如何从我的 SD 卡恢复数据的帮助都将不胜感激。我的大部分重要数据都已备份,但有一个笔记应用程序(在我的手机上)没有备份,我非常想找回这些数据。
PS 工作卡和损坏的卡都是微型 SD 卡,我正在使用卡适配器将它们插入我的计算机。
答案1
看起来卡已因过早移除而损坏。消息表明卡中的控制器出现故障或存在坏块。后者可能可以恢复。尝试以下方法恢复:
- 插卡
umount /dev/mmc0
使用(或使用驱动器安装的任何方式)卸载它fsck -v /dev/mmc0
- 安装它
如果这没有帮助,您必须使用 重新格式化mkfs
。如果卡仍然无法使用,则控制器的硬件可能已损坏且无法恢复。
答案2
尝试使用 gparted 创建新的分区表。从 Dash 或gksu gparted
终端中打开 gparted,然后选择您的设备,并转到设备 -> 新建分区表。