将完整磁盘映像从Android复制到计算机

Ale*_*_JP 22 android adb

我有一部智能手机,无法插入SD卡.我想转储最大的分区(因为我丢失了文件,我想使用转储来恢复它们).

分区是10GB.

我正在寻找使用但没有任何东西的ADB命令......pulldd

我尝试使用Carliv touch recoveryOTG的32GB usb密钥,但USB密钥没有安装......然后我无法直接在手机上使用"dd" Aroma file manager和终端仿真.

谢谢!

Ale*_*_JP 25

正如评论中所述,adb pull /dev/block/mmcblk0 mmcblk0.img为我工作."DD图像"仅是设备的二进制图像文件.

  • 是的,当然,分区必须被“卸载”,然后只能在“恢复模式”。 (2认同)
  • ADB 抛出:“远程对象 '/dev/block/mmcblk0' 不存在” (2认同)

use*_*193 13

简而言之:您需要在计算机(最好是SSD驱动器)上制作副本,以便更快,无损地进行分析/恢复.这是在Windows中实现这一目标的简单方法(在xda上代码为scda代码,有关详细信息,请参阅他的帖子):

  1. 安装cygwin(链接).在安装过程中,添加netcat(在Net下)和pv(在util-linux下)包.
  2. 安装adb(通过Android Studio,链接).确保将adb.exe添加到路径变量以正确访问它(指南).
  3. 确保您的设备已植根,并且您在标准位置(/ system/xbin)上安装了手机上的busybox.
  4. 打开2个cygwin控制台,然后快速进入:
    1. dd(通过tcp连接转发数据)
      netcat(打开连接)
      pv(获取root访问权限)
      util-linux(通过tcp端口管道dd命令)
    2. C:\
      adb.exe (通过tcp端口接收数据,将其保存在mmcblk0.raw中)

这将把分区保存/dev/block/mmcblk0在cygwin 的用户目录(下)中.标准安装位于,terminal 1因此请确保您事先有足够的磁盘空间.

  1. 要在Windows中安装分区,可以使用OSFmount(链接).
  2. 要分析文件我推荐Active @ Undelete(链接),但有很多替代品.使用Active @ Undelete,您还可以直接从文件加载所有分区(无需安装,因此在这种情况下,步骤5是多余的).


小智 5

以root身份运行:

adb root
Run Code Online (Sandbox Code Playgroud)

使用dd将内容输出到stdout并在计算机上写入文件:

adb shell 'dd if=/dev/block/platform/msm_sdcc.1/by-name/XXXXXX 2>/dev/null' > XXXXXX.img
Run Code Online (Sandbox Code Playgroud)

或全部(请参见cat / proc / partitions)

adb shell 'dd if=/dev/block/mmcblk0 2>/dev/null' > mmcblk0.img
Run Code Online (Sandbox Code Playgroud)

  • 请解释这些命令行 (8认同)