当前位置:首页>Linux>在 Linux 上运行完整 Android 系统

在 Linux 上运行完整 Android 系统

  • 2026-10-11 02:41:55
在 Linux 上运行完整 Android 系统

Waydroid 小白保姆级教程

在 Linux 上运行完整 Android 系统

基于容器技术 · 性能接近原生 · 支持 Android 应用

Waydroid 项目 GitHub 仓库首页截图(11970 stars)

2026 年 8 月 · Waydroid 官方文档整理

一、Waydroid 是什么?

Waydroid 是一个免费开源的 Android 容器方案,基于 Linux namespace(用户、PID、UTS、网络、挂载、IPC)在普通 GNU/Linux 系统上运行完整的 Android 系统。

与虚拟机不同,Waydroid 的 Android 系统可以直接访问宿主机硬件,性能接近原生 Android,且支持安装 Android 应用、访问 Google Play(需配置)、运行 ADB 调试。

1.1 核心特性

•🚀 容器化运行:基于 Linux namespace,资源占用低,启动快

•📱 完整 Android 系统:基于 LineageOS Android 13,功能完整

•🔧 硬件直通:Android 系统可直接访问宿主机硬件(显卡、声卡等)

•🔄 会话管理:支持启动/停止会话,与宿主机桌面无缝切换

•📦 支持多窗口:可配置多窗口模式,类似桌面应用

•🔌 ADB 调试:支持 ADB 连接,方便开发和调试

•🌐 网络共享:Android 系统与宿主机共享网络,无需额外配置

1.2 适用场景

•在 Linux 桌面运行 Android 应用(如微信、企业微信、钉钉等)

•Android 应用开发与调试

•测试 Android 应用在 Linux 环境下的兼容性

•替代 Genymotion/BlueStacks 等传统安卓模拟器

💡 Waydroid 不是传统意义上的模拟器,而是真正的容器化 Android 系统,性能远超模拟器,但需要宿主机支持 Linux namespace。

请在微信客户端打开

二、系统要求与兼容性

2.1 支持的系统

•Ubuntu 22.04+(推荐)

•Debian 13+(Trixie backports)

•Fedora(官方仓库)

•Arch Linux(AUR 或官方包)

•其他 Debian/Ubuntu 衍生版

2.2 前置要求

•64 位 x86 架构系统(ARM 架构支持有限)

•系统内核支持 Linux namespace(现代内核默认支持)

•推荐使用 Wayland 会话(Ubuntu 22.04+ 默认)

•至少 4GB 内存(推荐 8GB+)

•至少 10GB 可用磁盘空间

2.3 重要提示

⚠️ Waydroid 需要系统启用 Wayland 会话。Ubuntu 22.04+ 默认使用 Wayland,但部分 NVIDIA 显卡用户可能默认使用 X11。如需切换,请在登录界面选择「Ubuntu on Wayland」。

三、安装步骤(Debian/Ubuntu 官方推荐)

以下步骤适用于 Debian 13+、Ubuntu 26.10+ 及衍生系统。旧版本需要添加第三方仓库。

终端安装 Waydroid 命令执行界面

3.1 添加官方仓库

首先安装 curl 并添加 Waydroid 官方仓库:

sudo apt install curl ca-certificates -y curl -s https://repo.waydro.id | sudo bash

这条命令会自动添加 GPG 密钥和仓库源到系统中。

3.2 更新包列表并安装

添加仓库后,更新并安装 Waydroid:

sudo apt update sudo apt install waydroid -y

安装过程会自动下载 Waydroid 及其依赖,包括 Android 系统镜像。

💡 如果系统提示 waydroid 没有可用的安装候选,说明你的系统版本较旧,需要先添加第三方仓库。请参考官方文档中的旧版本安装指南。

四、启动与使用

安装完成后,Waydroid 需要两步启动:先启动容器,再启动会话。

Waydroid 启动流程:容器 → 会话 → 完整 UI

4.1 启动容器(首次启动需下载镜像)

执行以下命令启动 Waydroid 容器:

sudo waydroid container start

首次启动时,Waydroid 会自动下载 Android 系统镜像(约 1-2GB),请耐心等待。下载完成后,容器会保持运行状态。

⚠️ 首次启动下载镜像可能需要 5-15 分钟,取决于网络速度。如果下载失败,请检查网络连接或更换网络环境重试。

4.2 启动会话

容器启动后,在另一个终端窗口执行:

waydroid session start

这条命令会启动 Waydroid 会话,使 Android 系统与宿主机桌面集成。

4.3 显示完整 Android UI

执行以下命令打开完整的 Android 界面:

waydroid show-full-ui

此时你会看到一个完整的 Android 桌面环境,可以像操作普通 Android 设备一样使用。

4.4 常用命令

•查看 Waydroid 状态:waydroid status

•停止会话:waydroid session stop

•停止容器:sudo waydroid container stop

•重启 Waydroid:waydroid session stop && sudo waydroid container stop && sudo waydroid container start && waydroid session start

五、高级配置(可选)

5.1 启用多窗口模式

Waydroid 默认以全屏方式运行 Android。如需启用多窗口模式(类似桌面应用的窗口化显示),执行:

waydroid prop set persist.waydroid.multi_windows true

设置后重启 Waydroid 生效。

5.2 配置 OTA 更新

Waydroid 支持通过 OTA(Over-The-Air)更新 Android 系统。首次启动时,系统会提示输入 OTA 地址:

•System OTA:https://ota.waydro.id/system

•Vendor OTA:https://ota.waydro.id/vendor

输入这两个地址后,Waydroid 会自动检查并安装系统更新。

5.3 ADB 调试

Waydroid 默认启用 ADB 调试,你可以通过以下命令连接:

adb connect localhost:5555

连接后可以使用 Android Studio、scrcpy 等工具进行调试和屏幕镜像。

💡 使用 scrcpy 可以实现低延迟的屏幕镜像和控制:scrcpy --render-driver=software(遇到渲染问题时添加 --render-driver=software 参数)。

六、常见问题(FAQ)

Q1:安装时提示 waydroid 没有可用的安装候选?

•你的系统版本较旧,需要添加第三方 Waydroid 仓库。请访问官方文档查看旧版本安装指南。

•Debian 13 (Trixie) 用户:需要启用 backports 仓库。

•Ubuntu 22.04 及更早版本:需要添加官方 Waydroid 仓库。

Q2:启动时提示 Wayland 会话未启用?

•在登录界面选择 Ubuntu on Wayland 而非 Ubuntu。

•如果看不到 Wayland 选项,请检查系统设置中的显示服务器配置。

Q3:Android 应用无法联网?

•Waydroid 默认与宿主机共享网络,通常无需额外配置。

•如果遇到网络问题,检查宿主机防火墙设置,确保未阻止 Waydroid 容器网络。

Q4:如何卸载 Waydroid?

•执行以下命令完全卸载:

sudo apt remove waydroid sudo rm -rf /var/lib/waydroid /home/.waydroid ~/waydroid ~/.share/waydroid ~/.local/share/applications/*aydroid* ~/.local/share/waydroid

Q5:NVIDIA 显卡兼容性问题?

•Waydroid 对 NVIDIA 显卡的支持有限,建议使用 AMD 或 Intel 集成显卡。

•如必须使用 NVIDIA,请确保安装最新驱动,并在启动时添加 appropriate GPU 参数。

七、结语

Waydroid 为 Linux 用户提供了一种高性能、低资源占用的 Android 运行方案。通过容器化技术,它实现了接近原生的 Android 体验,同时保持了 Linux 系统的灵活性和开放性。

无论是运行 Android 应用、进行开发调试,还是替代传统模拟器,Waydroid 都是一个值得尝试的选择。

项目地址:https://github.com/waydroid/waydroid(11970 stars)

官方文档:https://docs.waydro.id

在线社区:Matrix / Telegram(见 GitHub README)

— 教程完 —

最新文章

随机文章