必须先确认cpu虚拟化在任务管理器中显示“已启用”,否则需进bios开启vt-x/amd-v;若已启用,则需依次禁用hyper-v、关闭vbs、重启系统,并可选启用virtualbox嵌套虚拟化。

VirtualBox启动虚拟机时提示“VT-x/AMD-V硬件加速未启用”,说明CPU硬件虚拟化能力被物理禁用或被Windows内核级组件独占,必须先确认BIOS中已开启VT-x/AMD-V,再逐层解除Hyper-V、VBS等抢占资源的系统功能,否则任何软件设置都无效。
确认硬件虚拟化是否真被禁用
这一步不改设置,只做判断。跳过它直接进BIOS可能白忙一场。
按下 Ctrl + Shift + Esc 打开任务管理器 → 点击顶部“性能”选项卡 → 左侧选“CPU” → 滚动到右下角,找到“虚拟化”这一行。
如果显示“已禁用”,必须进UEFI/BIOS开启;如果已是“已启用”,问题出在VBS、Hyper-V或驱动冲突,不用继续往下操作。
进UEFI/BIOS开启VT-x或AMD-V
这是所有后续操作的前提。没有这步,后面全白做。
方法一:用Windows内置入口(推荐新手)
按 Win + I 打开设置 → 左侧点“系统” → 滚到底部点“恢复” → 在“高级启动”区域点“立即重新启动”。
电脑重启后进入蓝色恢复界面 → 依次选“疑难解答” → “高级选项” → “UEFI固件设置” → 点“重启”。
此时直接进入主板UEFI主界面。用方向键切换到 Advanced(高级)或 Configuration(配置)标签页。
查找 Intel VT-x、Intel Virtualization Technology、SVM Mode 或 AMD-V ——不同品牌叫法不同,但关键词逃不开这几个。
选中它,按 Enter,把值从 Disabled 改为 Enabled。【若同时看到 Intel VT-d 或 IOMMU,也一并设为 Enabled——漏掉可能导致WSL2设备直通异常】
按 F10 → 选“Yes”保存并退出 → 电脑自动重启。
关闭Windows内核级虚拟化抢占组件
即使BIOS开了,Hyper-V、VBS、WSL2也会锁死VT-x指令权限,VirtualBox完全无法调用。
第一步:以管理员身份运行 PowerShell。
第二步:执行三行命令,顺序不能错:
dism.exe /Online /Disable-Feature:Microsoft-Hyper-V /All /NoRestart →
bcdedit /set hypervisorlaunchtype off →
wsl --shutdown
第三步:重启电脑。不重启,命令不会生效。
禁用基于虚拟化的安全性(VBS)
Windows安全中心里的“基于虚拟化的安全性”会强制加载HVCI驱动,它比Hyper-V更隐蔽,也更顽固。
打开“Windows安全中心” → “设备安全性” → “基于虚拟化的安全性”。
点击“关闭基于虚拟化的安全性”按钮。系统会弹出警告,确认关闭。
关闭后,页面下方会显示“需要重启才能完成更改” —— 【必须重启,否则VBS仍驻留内存】
手动启用VirtualBox嵌套虚拟化(针对6.0.24等老版本)
某些旧版VirtualBox图形界面里“嵌套VT-x/AMD-V”选项是灰色不可勾选的,但命令行仍可强制开启。
方法一:命令行直接启用
以管理员身份打开PowerShell → 运行:
VBoxManage modifyvm "你的虚拟机名称" --nested-hw-virt on
方法二:验证是否生效
运行:
VBoxManage showvminfo "你的虚拟机名称" | findstr "nested"
如果输出包含 nested paging: on,说明已成功;若仍是 off,说明前面某步没到位,需回头检查BIOS或VBS状态。











