Anbox的配置
Anbox的配置
本文仅针对Arch Linux用户而言,Manjaro用户请不要尝试,显卡驱动会炸(别问,问就是试过)
简介
Anbox
是一个可以在 GNU/Linux
发行版上运行 Android App 的一个 容器。
使用它,你可以让Android Apps直接跑在内核上,效率比较高
领先Windows一万年(?)
开始
1. 本体的安装
1 |
|
其中,anbox-xxxxxx可以是以下内容
- anbox-image(官方镜像)
- anbox-image-houdini(包含 Houdini)
- anbox-image-houdini-rooted(包含 Houdini 和 SuperSU)
- anbox-image-gapps(包含 Houdini 和 OpenGApps)
- anbox-image-gapps-rootedAUR (包含 Houdini, OpenGApps 和 SuperSU)
通常情况下,在 x86_64 计算机上运行 ARM 应用程序需要 Houdini
,所以不要安装anbox-image,这样在后续安装ARM程序的时候会出现[INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]的错误
2.内核
需要运行带有 ashmem 和 binder 模块的内核,但它们不是 Arch Linux 的默认内核 ( linux ) 的一部分,所以需要安装一个包含这些模块的内核
通常情况下,你可以使用linux-zen
内核
它包含了anbox运行所要的模块,而且也是最简单的方式
此内核需要一两周滚动更新一次,即sudo pacman -Syu
1 |
|
3.更新Grub
1 |
|
4.重启界面选择Linux-zen
重启,在grub中选择即可
5.挂载binderfs
linux-zen内核必需挂载binderfs
首先,需要一个挂载点。默认情况下,Anbox 将使用 /dev/binderfs
。 可以直接创建该目录,但它会在启动时被删除
1 |
|
所以这里建议使用 systemd-tmpfiles(ArchLinux Wiki) 实现在启动时创建 /dev/binderfs
为此
需要在 /etc/tmpfiles.d/
创建一个包含以下内容的文件:
1 |
|
实现:
1 |
|
其次需要挂载 binder 文件系统
1 |
|
如果想要在启动时挂载它,只需要在 fstab 中添加下面这一行。
none /dev/binderfs binder nofail 0 0
实现:
1 |
|
警告: 添加 nofail
参数后,当启动没有 binderfs 支持的内核时,将无法进入恢复 shell
再次重启
6.打开服务
1 |
|
7.启动Anbox
在桌面环境菜单中找到anbox,打开它,可以进行使用
8.安装软件
在anbox中,adb无需手动配置
1 |
|