微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使你的电脑的Android分区的形象

我试图做一个备份(我的手机内置存储卡的分区的直接dd镜像到我的电脑。我使用Linux和我的手机是Nexus 4。

如何初始化文件系统?

如何在Windows上使用C ++将包含多个分区的映像写入USB闪存驱动器

与MSsqlPHP​​不安装在centos 7

打印分区表 – C程序

CentOS 6.02 64位操作系统中的OpenSSL构build错误

这里另一个更好的答案

要求:adb必须已经安装

从https://www.androidfilehost.com/?fid=9390169635556426389下载不安全的boot.img到您的电脑

通过关闭电源重新启动手机进入快速启动模式,然后按住音量降低和电源按钮。

从您的Linux PC中boot.img所在的文件夹中键入:

$ fastboot boot boot.img

要复制mmcblk0分区类型的图像:

$ adb pull /dev/block/mmcblk0 mmcblk0.img

要求:adb必须已经安装

从https://www.androidfilehost.com/?fid=9390169635556426389下载不安全的boot.img到您的电脑

通过关闭电源重新启动手机进入快速启动模式,然后按住音量降低和电源按钮。

从您的Linux PC中boot.img所在的文件夹中键入:

$ fastboot boot boot.img

要制作mmcblk0p23分区类型的映像:

$ adb shell 'stty raw && dd if=/dev/block/mmcblk0p23' > ~/userdata.img

有用的链接

如何识别感兴趣的分区: http : //forum.xda-developers.com/showthread.PHP?t=2450045

如果没有使用stty raw,则所有的LF都将被转换为CRLF:android.stackexchange.com/questions/69434/is-it-possible-to-cat-a-file-to-an-android-phone-and-dd-到DEV-XXX-上即时-W

如何根电话并使用不安全的boot.img:www.addictivetips.com/android/root-google-nexus-4-install-clockworkmod-recovery/

通过ADB shell传输二进制数据(如何使用stty raw):stackoverflow.com/questions/11689511/transferring-binary-data-over-adb-shell-ie-fast-file-transfer-using-tar

安装TWRP 。

在TWRP页面上选择您的设备,然后按照安装说明进行操作。

启动到恢复

您可能必须找到特定于您的设备的组合键才能对引导加载程序菜单作出反应。 如果使用fastboot( fastboot flash recovery twrp.img ) fastboot flash recovery twrp.img ,则可以尝试fastboot reboot-bootloader ,然后选择Recovery 。

在TWRP中挂载分区

你现在应该在TWRP。 从那里,选择安装。 确保您的data分区已挂载。 确保您的system分区已安装,因为您需要驻留在那里的一些可执行文件

连接adb

如果你还没有安装adb话。 用USB线将手机连接到电脑。 键入adb devices 。 如果您看到列出的设备,则说明您已连接。

转发端口adb forward tcp:33333 tcp:33333

我们需要启用TCP访问您的手机。 该命令侦听计算机的端口33333(第一个参数),并将所有连接转发到手机上的端口33333。 你可以选择任何端口。 PC上低于1024的端口需要root权限。 确保您选择的端口尚未被使用。 这两个数字不需要匹配。

找到要备份的分区adb shell mount

找到您要备份的分区并获取设备名称。 [ 编辑 :如果你需要备份的分区看起来像/dev/block/dm-0 ,它是逻辑卷(LVM)的一部分,这可能不是正确的方法来备份]

从您的手机转发原始分区

adb shell

试试dd if=/dev/block/dm-0 bs=64k | gzip | nc -l -p 33333 dd if=/dev/block/dm-0 bs=64k | gzip | nc -l -p 33333

这个/dev/block/dm-0与你在mount命令中找到的设备相同。

将33333替换为上面选择的电话端口

如果找不到任何命令,可以尝试在/system/bin/toyBox或/system/bin/busyBox

这个命令块从指定的设备拷贝( if= ),并且使用64k的块大小( bs=64k – 你可以指定任何一个,或者完全省略这个参数,但是小的值可能会减慢处理速度。通常不会加快这个过程),把它转储到stdout ,输入到gzip压缩它,然后通过端口33333( -p 33333 )监听( -l )的netcat。

将数据转储到您的计算机上

从新的终端上,执行nc localhost 33333 | pv -i 0.5 --size 54g > dm-0.raw.gz nc localhost 33333 | pv -i 0.5 --size 54g > dm-0.raw.gz

将33333替换为上面选择的计算机端口

用任何文件名替换dm-0.raw.gz

将54g替换为您的分区大小(请参见下文)

此命令连接到本地主机(您的计算机)上的端口33333 ,并转储到stdout管道,该管道每半秒更新一次传输进度( -i 0.5 ),估计大小为54个--size 54g ( --size 54g – you可以省略这个参数,但是传输进度必须准确),然后到一个名为dm-0.raw.gz的文件

我怎么能在我的Nexus 5(LG-D821)上做同样的事情。 扎根Android 6.0.1。 恢复是CWM 6.0.4.5。

我写的命令:$ fastboot boot boot.img(电话被冻结,必须重新启动)

输出

root @ ubuntu:/ home / user / Desktop#$ fastboot boot boot.img正在下载'boot.img'…

OKAY [0.967s]

启动…

Failed(状态读取失败(没有这样的设备))

完了。 总时间:45.929s

并且,在终端中写入命令后:$ adb shell pull / dev / block / mmcblk0p28 userdatanexus.img。

输出是/ system / bin / sh:拉:找不到

我想创建/ userdata /图像。 谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐