在 Ubuntu 中将 Android 模拟器 vendor.img 挂载为读写

在 Ubuntu 中将 Android 模拟器 vendor.img 挂载为读写

我想稍微了解一下作为 Android 模拟器系统映像的一部分提供的 vendor.img 文件。我对 Android 11(API 级别 30)特别感兴趣。

我想将其安装到 Ubuntu 机器上,修改它,然后保存它。对于较旧的版本(<= Android 9(API 级别 28)),我可以通过安装、修改和卸载它来做到这一点。但是对于 Android 11,当我将映像安装为 rw 时出现错误。

这些是我使用的命令:

$ fdisk -lu vendor.img

Disk vendor.img: 101 MiB, 105906176 bytes, 206848 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 5AE1C1A8-BAFF-4DE4-A85A-7A7093FA8019

Device      Start    End Sectors Size Type
vendor.img1  2048 204799  202752  99M Linux filesystem

$ sudo mount -t auto -o rw,loop,offset=$((2048*512)) vendor.img /mnt/vendor/
mount: /mnt/vendor: wrong fs type, bad option, bad superblock on /dev/loop17, missing codepage or helper program, or other error.

作为 ro 安装可以正常工作:

$ sudo mount -t auto -o ro,loop,offset=$((2048*512)) vendor.img /mnt/vendor/

但尝试将其重新安装为 rw 却不行:

$ sudo mount -o remount,rw /mnt/vendor/
mount: /mnt/vendor: cannot remount /dev/loop17 read-write, is write-protected.

这个 rw 保护机制是如何实现的,我该如何禁用它?

相关内容