小编ewh*_*hac的帖子

从 eMMC 芯片恢复数据

几个月前,我亲爱的手机坏了——一部 HTC One M7——而一位评价很高的本地电话技术人员无法将它复活。她非常想从手机中获取尽可能多的数据,但由于它没有开机,更不用说通过 USB 枚举,普通的数据恢复技术是不可能的。

传统的解决方案似乎已经用尽,我决定变得非常规。由于手机已经有效且不可恢复地变砖,我找了一个非常熟练的朋友拆卸手机并将eMMC芯片从板上取下。我购买了一个 eMMC pogo pin 读取器,将芯片放入其中,并尝试在我的 Linux PC 上读取它。

令我惊讶的是,该芯片似乎被操作系统识别并出现在 /dev 中,其中包含节点/dev/mmcblk0/dev/mmcblk0boot0、 和/dev/mmcblk0boot1,这是意料之中的。但是,操作系统报告没有分区,转储所有块设备只会返回一堆零。

这是最后一部分让我感到困惑。闪存单元的“自然”状态是逻辑高电平 (0xFFFF ....),如果芯片在移除过程中损坏或弹簧针没有正确接触,我希望看到这种状态。但在这里我看到的都是零。我觉得不可思议的是,任何正常的操作,甚至是手机上以 root 权限运行的流氓程序,整个芯片都可以充满零。

我的问题:我是否看到了芯片的真实当前状态,或者我是否在尝试连接它并与之交谈时搞砸了一些事情?还有什么可以尝试的吗,还是我在游戏结束时?

以下是来自 sysfs 和 Linuxmmc工具的一些诊断信息。有问题的 eMMC 芯片是(我很确定)海力士 H26M64002DQR:

$ cd /sys/bus/mmc/devices/mmc0:0001
$ ls -F
block/   dsr                   fwrev   oemid                 rel_sectors
cid      enhanced_area_offset  hwrev   power/                serial
csd      enhanced_area_size    manfid  preferred_erase_size  subsystem@
date     erase_size            name    prv                   type
driver@  ffu_capable           ocr     raw_rpmb_size_mult    uevent
$ cat cid
90014a484247346504010947a6b83001
$ cat csd
d02701320f5903ffffffffef8a404001
$ cat …
Run Code Online (Sandbox Code Playgroud)

data-recovery

5
推荐指数
1
解决办法
2221
查看次数

标签 统计

data-recovery ×1