我通过构建 AOSP 来生成 *。img 。
喜欢 ramdisk.img,boot.img 等
我想 mount 这个文件。我使用的是Ubuntu。
答案 0 :(得分:0)
您无法挂载boot.img
文件,因为它不是有效的文件系统
boot.img
文件包含ramdisk和内核二进制文件(zImage
),可能包含dt.img
(设备树)。
有一个优秀的开源项目:mkbootimg_tools
at GitHub。您可以使用它来拆分boot.img
文件并解压缩ramdisk。
答案 1 :(得分:0)
<强> simg2img
强>
某些版本默认会压缩某些Android图片。例如,使用lunch hikey960-eng
的HiKey960构建就是这种情况,但不适用于仿真器构建,例如与lunch aosp_x86_64-eng
。
您必须先使用simg2img
解压缩它们:
simg2img system.img out.img
sudo losetup --show -f -P out.img
sudo mount /dev/loop0 /mnt/loop0
simg2img
位于./out/host/linux-x86/bin/simg2img
下,并由lunch
自动添加到PATH。
但请注意,并非所有图像都是如此,例如: boot.img
。
如果您跳过simg2img
,则会收到错误消息:
NTFS signature is missing.
Failed to mount '/dev/loop3': Invalid argument
The device '/dev/loop3' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
尝试装载时。
似乎压缩格式是fastboot可以理解的。
还提到了:https://stackoverflow.com/a/9675784/895245
在分支repo init -b android-8.1.0_r1
的Ubuntu 16.04主机中测试。