首页 > 解决方案 > 使用 qemu 在 arm64 上虚拟化 Android

问题描述

我是论坛的新手,目前正在研究在 Raspi4 上虚拟化 Android。

问题的关键在于 Raspi 有一个 ARM 处理器,因此看起来很适合 Android。

现在我已经根据 arm https://wiki.lineageos.org/emulator的说明编译了 Lineage,为此 我使用了带有 AMD 的 Linux 计算机。

我只想直接用 qemu 启动它,以便能够控制它正在运行的实例数量。使用模拟器命令我也没有得到任何进一步的信息,因为 200GB 的 repo 和所有其他数据都不在 Raspi 上。

我已经提取了内核 5.4 和 system.img,它位于 /home/android/lineage/out/target/product/generic_arm64 中,现在正试图让它以某种方式工作。不幸的是,我从 qemu-system-aarch64 收到消息,指出无法使用当前命令挂载根文件系统:

qemu-system-aarch64 -M virt,accel=kvm -cpu host -no-reboot -serial stdio -append "root=/dev/ panic=1 rootfstype=ext4 loglevel=8 rw" -drive "file=system.img,index=0,media=disk,format=raw" -kernel kernel-5.4 

我尝试了许多路径,例如 root=/dev/sda0 sda1 vda ...

[    0.651008] Please append a correct "root=" boot option; here are the available partitions:
[    0.651754] 0100            8192 ram0
[    0.651755]  (driver?)
[    0.652319] 0101            8192 ram1
[    0.652319]  (driver?)
[    0.652891] 0102            8192 ram2
[    0.652891]  (driver?)
[    0.653511] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[    0.654294] platform regulatory.0: Falling back to sysfs fallback for: regulatory.db
[    0.655023] 0103            8192 ram3
[    0.655024]  (driver?)
[    0.655587] 0104            8192 ram4
[    0.655587]  (driver?)
[    0.656154] 0105            8192 ram5
[    0.656155]  (driver?)
[    0.656716] 0106            8192 ram6
[    0.656717]  (driver?)
[    0.657310] 0107            8192 ram7
[    0.657311]  (driver?)
[    0.657885] 0108            8192 ram8
[    0.657885]  (driver?)
[    0.658446] 0109            8192 ram9
[    0.658446]  (driver?)
[    0.659010] 010a            8192 ram10
[    0.659010]  (driver?)
[    0.659578] 010b            8192 ram11
[    0.659579]  (driver?)
[    0.660154] 010c            8192 ram12
[    0.660154]  (driver?)
[    0.660732] 010d            8192 ram13
[    0.660733]  (driver?)
[    0.661102] kworker/u2:0 (102): highest shadow stack usage: 144 bytes
[    0.661917] cryptomgr_probe (104): highest shadow stack usage: 168 bytes
[    0.662536] 010e            8192 ram14
[    0.662536]  (driver?)
[    0.663116] 010f            8192 ram15
[    0.663117]  (driver?)
[    0.663689] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) 

你们中的任何人有一个想法或方法如何让所有这些工作吗?

谢谢并恭祝安康,

哈尔

标签: androidraspberry-piqemuarm64lineageos

解决方案


推荐阅读