You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CPU不支持KVM 如何在AWS Amazon Linux 2实例运行Android模拟器

问题核心原因

你遇到的报错本质是当前EC2实例的CPU未暴露虚拟化扩展(vmx/svm),或是KVM组件配置、权限存在问题,以下是Amazon Linux 2环境下的完整解决步骤:


第一步:确认EC2实例支持硬件虚拟化

这是最常被忽略的前置条件:

  • 普通T2/T3等突发性能实例、默认配置的虚拟化实例默认不暴露VT-x/AMD-V指令集,必须使用支持嵌套虚拟化的实例规格(如C5/M5/R5系列金属实例,或手动开启了嵌套虚拟化的虚拟化实例)
  • 验证CPU指令集支持,执行命令:
grep -E 'vmx|svm' /proc/cpuinfo

如果没有任何输出,说明当前实例不支持硬件虚拟化,直接更换符合要求的实例规格即可解决90%的同类问题。


第二步:Amazon Linux 2下正确配置KVM

如果上一步有输出,说明CPU支持虚拟化,按以下步骤配置:

  1. 升级系统包到最新版本
sudo yum update -y
  1. 安装完整的KVM依赖组件(仅安装@virtualization组会缺失必要工具)
sudo yum install -y qemu-kvm libvirt libvirt-python libguestfs-tools virt-install
  1. 启动libvirt服务并设置开机自启
sudo systemctl enable --now libvirtd
  1. 给当前用户授予KVM访问权限
sudo usermod -aG kvm $USER

执行后需要退出当前SSH会话重新登录,或者执行newgrp kvm临时生效。
5. 验证KVM配置正常

kvm-ok

输出包含KVM acceleration can be used即为配置成功;如果kvm-ok命令不存在,执行ls /dev/kvm,存在该文件即为配置正常。


第三步:验证Android模拟器启动

配置完成后重新执行启动命令即可:

./emulator -avd my_avd_31 -no-audio -no-window

如果仍有报错,可以加上-accel on参数强制启用硬件加速。


特殊替代方案:如果确实无法使用支持硬件虚拟化的实例,可以创建AVD时选择armeabi-v7a/arm64-v8a架构的系统镜像,该类型镜像不需要KVM支持即可运行,缺点是运行性能远低于x86架构镜像。

内容的提问来源于stack exchange,提问作者Raghu Chahar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 13:30:05