很多人觉得数据恢复就是拿工具扫一扫,这种想法是非常错误的。想干好一件事,绝不是仅仅机械性的重复固有动作,必须要加入个人的思考。比如对安卓手机的数据恢复,你真的会吗?

0×00 背景介绍

很多人都有在使用手机时误删数据的经历,比方说和女朋友分手后把之前一起玩耍的影像资料删除了,结果没过几天又复合了,某天女朋友想和你一起回忆某个温馨时刻,这时候拿不出照片或视频来会非常尴尬。为了避免这类人(Xi)间(Wen)惨(Le)剧(Jian)发生,很有必要掌握一下数据恢复技术。

传统的数据恢复往往借助软件即可完成,例如Easy Recovery,Recuva之类。但这类软件对新的安卓系统手机往往无能为力了,因为从几年前开始,大部分手机生产厂商用“媒体设备”MTP模式替代了大容量USB存储模式,而传统数据恢复软件无法直接对MTP模式加载的手机存储空间进行数据恢复,如图所示。

因此有必要研究适合于目前安卓系统手机的数据恢复方法,本文中主要讨论手机内部存储空间的数据恢复,对于手机TF卡的数据恢复采用传统手段即可完成,本文不再讨论。

目前手机数据恢复的常见方法有三种:

第一种方法:

物理拆解芯片进行数据恢复。通过拆解并取出存储芯片后,借助硬件工具读取芯片的数据后进行数据恢复。这种方法的优点在于不会对存储芯片写入新的数据,能够较好的保护数据的原始状态。缺点也显而易见,这种方法对工具和动手能力要求较高,稍有不慎手机和芯片都有报废风险,普通用户较难独立完成这类操作。

第二种方法:

借助安装在PC端的第三方工具进行数据恢复。目前网络上名气较大的安卓数据恢复工具主要有Wondershare Dr.Fone,Tenorshare-android-data-recovery,7-Data Recovery Suite 等软件,但这类软件普遍存在的问题是,常常无法与手机建立连接,或者在连接后扫描时提示失败,可能是由于安卓系列手机系统定制化程度较高,每家手机制造商都对安卓系统做了或多或少修改的缘故,导致实际效果并不理想,相信很多朋友在用这类软件时也遇到了类似的问题。

第三种方法:

借助安装在手机上的安卓APP进行数据恢复。由于APP直接运行在手机上,因此不存在第二种方法中软件与手机连接失败的问题,这类软件恢复的效果好坏很大程度上取决于软件开发人员使用的数据恢复算法能力的优劣。这类软件有很多,以某数字清理大师为例,某数字清理大师的隐私粉碎功能能够扫描到用户之前删除的部分类型文件,并确实能够对这类文件进行恢复。但其缺点也有很多,主要有四点:一是能够恢复的文件类型有限,主要是针对照片、短信、通话记录等;二是照片时只能一张一张点开恢复,无法批量恢复,操作繁琐;三是数据恢复算法不够强,与传统数据恢复工具如R-Studio和EasyRecovery相比存在不小差距;四是数据只能恢复到手机内部存储空间中,无法选择恢复到SD卡,因此手机原数据存在被新恢复数据覆盖的风险。当然,这些缺点可能与这款软件的定位是隐私粉碎而非隐私恢复相关,这些缺点在很多同类软件上也同样存在,特别是数据恢复能力方面很多软件在这方面功能实在是过于孱弱,第三种方法由于存在诸多弊端同样不能让人满意。

0×01 正确恢复安卓手机数据的姿势

那么到底有没有效果更加理想的数据恢复方法,答案是肯定的。其实以上方法中最大的问题在于,这类软件要么根本不能用,要么恢复能力太弱。如果能借助传统的数据恢复工具的强大算法,那么这类问题自然迎刃而解。下面介绍一种解决方案,能够在很大程度上解决以上方法中的瓶颈。本文中以Nubia Z9 Max NX510J为例进行说明,步骤比较详细以便尽可能照顾不同水平的读者。

第一步,对手机进行Root,Root前需要进入开发者模式并打开USB调试模式。这是最基本的要求,具体如何Root与手机的型号有关,如果实在不会就找身边的异性IT达人帮忙吧。

第二步,在手机中安装BusyBox。建议从Google官方下载,×××自备,文章中用到的工具会在结尾处提供,懒人自取。BusyBox安装时可选择路径,假设安装在[/system/bin/busybox]。

第三步,将手机与电脑连接。连接后需要安装相应驱动,可借助豌豆荚等工具进行安装。另外需要准备好adb调试工具(adb.exe等文件),可从Android SDK官网下载,Root工具包中一般也会提供。

第四步,电脑中安装32位版本的Cygwin[C:\cygwin],并下载nc.exe和pv.exe,将这两个文件和之前准备好的adb.exe,AdbWinUsbApi.dll,AdbWinUsbApi.dll复制到[C:\cygwin\bin\]目录下。

第五步,运行[C:\cygwin\Cygwin.bat],依次输入下图中的命令,输入后窗口保持打开不要关闭:

adb forward tcp:5555 tcp:5555
adb shell
su
/system/bin/busybox nc -l -p 5555 -e /system/bin/busybox dd if=/dev/block/mmcblk0

第六步,再运行一次[C:\cygwin\Cygwin.bat]打开另一个窗口,依次输入如下命令:

adb forward tcp:5555 tcp:5555
cd /
nc 127.0.0.1 5555 | pv -i 0.5 > mmcblk0.raw

这时窗口上应该会出现如图所示的进度

耐心等待完成后,[C:\cygwin]目录下会出现mmcblk0.raw文件,文件大小等于手机内部存储空间的大小,该文件正是手机内部存储空间的镜像文件。

第七步,打开一款传统的数据恢复工具,由于raw文件是linux文件系统格式,因此需要支持这类系统的软件,经过实际使用测试发现,R-Studio和Easy Recovery均能较好识别这类文件格式,笔者更偏爱R-Studio,因此以这款软件为例。加载刚刚生成的mmcblk0.raw镜像,如图所示。

对镜像中的userdata部分进行扫描,扫描后即可找到被误删除的各类数据,女朋友终于保住了:)

使用这种方法,可以充分利用现有成熟数据恢复软件的恢复技术,大大提高安卓手机数据恢复的成功率。实际测试发现,通过这种方法找回的照片,数量上远远超过市面上各类手机数据恢复软件恢复的照片。国外已经有人写过类似教程,但可能由于对数据恢复软件不够熟悉,在提取镜像后又做了很多画蛇添足的处理,比如利用VhdTool.exe对镜像进行各种后期处理,不仅增加了步骤的繁琐程度,可能还会起到误导作用。

0×02 更多的思考

本文的核心在于对安卓手机镜像的提取,提取出镜像后能做的东西还有很多,比如通过分析wpa_supplicant.conf能够得出某人常去的地方等等。通过本文可以看出,如果淘汰的手机只是简单删除某些敏感文件后就直接交给一些第三方回收机构会存在多么大的风险,网上那么多小视频你觉得是怎么流出来的。如果缺乏对手机信息安全的基本保护意识,那就要承担可能面临的后果,有些后果可能会严重到付出高昂的代价。

0×03 参考资料

http://forum.xda-developers.com/galaxy-nexus/general/guide-internal-memory-data-recovery-yes-t1994705

0×04 文章中用的工具

下载地址 密码: 1ib8

感谢 作者:叶大人  本文为转载!

转载于:https://blog.51cto.com/jerryvv/1790082

手机数据恢复的正确思路相关推荐

  1. 手机应用软件测试的思路与要点

    软件测试主要针对于移动互联网行业,那么APP等相关软件的测试工作是非常多的,尤其对于产品的手机项目(应用软件),主要是进行系统测试.针对手机应用软件的系统测试,通常从如下几个角度开展:功能测试,兼容性 ...

  2. Easyrecovery 专业的手机数据恢复软件

    摘要:手机内数据丢失后,大多数的用户对于如何恢复手机数据存在一定的盲点,也不知道如何选择合适的数据恢复软件来恢复数据.Easyrecovery手机数据恢复软件可以及时恢复手机数据,帮助用户解决丢困扰. ...

  3. 安卓手机主题软件_安卓手机数据恢复软件——FonePaw Android Data Recovery Mac

    手机数据意外丢失?想要一款安卓手机数据恢复软件?FonePaw Android Data Recovery for Mac推荐给大家!Android Data Recovery Mac版可以从Andr ...

  4. android手机文件误删除恢复软件,被误删除的文件用安卓手机数据恢复软件怎么找回...

    被误删除的文件用安卓手机数据恢复软件怎么找回 电脑是我们每天都要用的工具,不管是在工作中还是在家庭生活中,电脑里面也存存了不少重要的信息,但是一不小心或者不经意间就把重要文件删除了的情况时有发生,一旦 ...

  5. 华信mysql数据恢复_华信安卓手机数据恢复程序3.0

    华信安卓手机数据恢复程序是由北京华信数据恢复中心独立研发,主要针对目前市场上安卓操作系统的手机的恢复,如果您的手机通讯录或短信丢失,华信安卓数据恢复程序可以轻松帮您搞定. 华信安卓手机数据恢复程序功能 ...

  6. android 恢复照片误删,安卓手机数据恢复:红米手机照片误删怎么恢复

    原标题:安卓手机数据恢复:红米手机照片误删怎么恢复 红米手机误删照片怎么恢复?小编的也爷爷使用的是红米手机,有一天跟我说"他误删了手机上的很多张照片,还一直抱怨自己眼花乱删东西". ...

  7. 手机数据恢复专家---蓝梦软件BestRecoveryForPhone

    手机数据恢复专家--蓝梦软件BestRecoveryForPhone 软件截图: 蓝梦软件手机恢复软件BestRecoveryForPhone主要针对手机数据丢失问题而设计的一款高效的恢复程序.软件通 ...

  8. 5个有效的华为(HUAWEI)手机数据恢复方法

    5个有效的手机数据恢复方法 华为智能手机中的数据丢失比许多人认为的更为普遍.发生这种类型的丢失有多种不同的原因,因此数据恢复软件的重要性.您永远不知道您的智能手机何时会在这方面垮台:因此,预防总比哀叹 ...

  9. python实现数据恢复软件手机版下载_强力手机数据恢复

    强力手机数据恢复是一款手机自动回复数据的应用软件,这款软件可以在用户手机数据丢失的情况下能够帮助用户回复数据,有了这款软件我们就再也不怕手机再丢失数据了,这款软件可以使丢失的数据恢复,我们在误删的情况 ...

最新文章

  1. wxpython多个面板_wxpython笔记:wxPython的布局管理实践【嵌入matplotlib、页面切换】...
  2. springboot之websocket
  3. js RegExp正则表达式常见用例
  4. One year ago begininginginginging!
  5. OS2ATC 2021:开源协作,和而不同
  6. Exposing Windows Forms Controls as ActiveX controls
  7. Git使用中关于rebase 、stash 、reflog、reset的一些注意点
  8. 帆软报表插件开发之fine-decision中的AccessProvider扩展
  9. 如何提取明细表头_超全!197页建筑工程预算实例教程+241页预算明细表,造价轻松算...
  10. 100w条数据插入Mysql 数据库,耗时仅10s
  11. Laravel 实战视频教程(精品)
  12. java 传参数报文给and_技术岛-技术改变生活
  13. python中spider的用法_Scrapy Spider类的用法
  14. TensorFlow 从入门到精通(13)—— NLP初探:电影评论感情分析
  15. 高斯平滑算法 c语言,高斯模糊算法(gaussian)
  16. java中的clear()
  17. android 联系人 中英文排序 --代码仓库
  18. 谋哥:App开发者的苦逼不值得怜悯!
  19. 【深度学习】实验1答案:Softmax实现手写数字识别
  20. 绘制原理图时的常识(一)Stm32F103ZE电源供电

热门文章

  1. 字符串转化为list
  2. CTFHub闯关之SQL注入
  3. Unity Shader - Metallic mode: Metallic Parameter 金属模式的参数
  4. python matplotlib 定制坐标轴
  5. 网页常用的新闻栏目+列表样式
  6. oracle如何添加触发器,Oracle之前插入触发器
  7. Flutter真机运行及模拟器运行
  8. 清华应届硕士炮轰字节:恶意低薪2万/月,硕士不如本科还倒贴
  9. RabbitMQ-8-其他知识点
  10. invokeBeanFactoryPostProcessors浅析