怎么在Mac上使用QEMU虚拟机安装Windows【开源虚拟化】

在Mac上运行Windows系统可选UTM(图形化入门)、ACVM(命令行+GUI混合)或纯QEMU命令行三种QEMU生态方案,均支持Apple Silicon芯片,需配合Windows ARM64镜像、QCOW2转换、SPICE工具及UEFI配置。

如果您希望在Mac上通过开源虚拟化方案运行Windows系统,QEMU作为底层核心引擎可提供完整硬件模拟能力,尤其适配Apple Silicon(M1/M2/M3)芯片的ARM64架构。以下是基于QEMU生态的多种可行安装路径:

一、使用UTM(推荐入门方案)

UTM是基于QEMU构建的图形化开源虚拟机应用,专为macOS优化,无需命令行操作即可完成Windows ARM版部署,适合首次接触QEMU生态的用户。

1、通过Homebrew安装UTM:执行brew install --cask utm;或直接从mac.getutm.app官网下载最新版安装包。

2、下载Windows 11 ARM64官方VHDX镜像:注册微软Windows Insider计划后,访问Insider Preview下载页,获取名称形如Windows11_InsiderPreview_Client_ARM64_en-us_XXXXX.VHDX的文件。

3、将VHDX转换为QCOW2格式:在终端中执行qemu-img convert -O qcow2 ~/Downloads/Windows11*.vhdx ~/Desktop/win11.qcow2

4、下载SPICE Guest Tools:从mac.getutm.app/support/获取spice-guest-tools-0.164.3.iso,用于提升显示、音频与剪贴板集成能力。

5、打开UTM,点击“新建虚拟机”,选择“虚拟化”类型 → “Windows” → 勾选“导入磁盘镜像”,指定转换后的win11.qcow2文件,并挂载spice-guest-tools.iso作为光驱。

6、在“硬件”设置中启用UEFI固件、分配至少4核CPU、8GB内存、开启USB 3.0控制器与SPICE图形加速。

7、启动虚拟机,进入Windows安装界面;若卡在联网激活页,按下Fn + Shift + F10调出命令提示符,输入oobe\bypassnro回车跳过网络校验。

二、使用ACVM(轻量命令行+GUI混合方案)

ACVM是为M系列Mac定制的QEMU前端工具,整合了QEMU-GUI界面与预置启动脚本,兼顾可控性与易用性,适合熟悉终端但倾向可视化操作的用户。

1、前往GitHub Releases页面下载ACVM v1.5或更高版本:github.com/ubenmackin/ACVM/releases。

2、解压后双击运行ACVM.app,首次启动时会自动检测并安装依赖项(含QEMU与OVMF固件)。

3、准备Windows 10/11 ARM64安装介质:下载微软官方VHDX镜像,或使用virtio-win-0.1.190.iso(提供网卡、存储驱动)与viogpudo.zip(GPU加速支持)。

4、在ACVM主界面点击“Create New VM”,选择“Windows ARM64”,导入VHDX文件后自动触发QCOW2转换流程。

5、在“Advanced Settings”中手动添加第二块虚拟光驱,挂载virtio-win-0.1.190.iso,确保安装过程中能识别NVMe与网络控制器。

6、启动虚拟机后,在Windows设备管理器中检查“其他设备”是否有带黄色感叹号的未识别硬件;若有,右键更新驱动,指向光驱中的vioscsinetkvm目录。

7、安装完成后,需在ACVM配置中启用SPICE协议并勾选“Share Clipboard”与“Share Files”,以实现主机与客户机间无缝交互。

三、纯QEMU命令行部署(高级可控方案)

该方式绕过所有图形前端,直接调用QEMU二进制程序启动虚拟机,适用于需要精细控制CPU拓扑、内存热插拔、PCIe直通等特性的技术用户,要求熟悉Shell与QEMU参数体系。

1、通过Homebrew安装QEMU及OVMF固件:执行brew install qemu edk2-firmware

2、创建QCOW2磁盘镜像:运行qemu-img create -f qcow2 ~/win11-arm64.qcow2 64G

3、准备UEFI固件路径:macOS下OVMF默认位于/opt/homebrew/share/qemu/ovmf-x86_64-code.fd,确认该路径存在且可读。

4、构造完整启动命令(请复制至单行执行):

qemu-system-aarch64 \

-machine virt,highmem=off,gic-version=3 \

-cpu cortex-a72,ipid=on,pmu=on,virtualization=on \

-smp cpus=4,sockets=1,cores=4,threads=1 \

-m 8G \

-bios /opt/homebrew/share/qemu/ovmf-x86_64-code.fd \

-drive if=pflash,format=raw,readonly=on,file=/opt/homebrew/share/qemu/ovmf-x86_64-vars.fd \

-drive file=~/win11-arm64.qcow2,if=virtio,cache=none,aio=native \

-cdrom ~/spice-guest-tools-0.164.3.iso \

-device usb-ehci,id=usb,bus=pci.0,addr=0x1d \

-device usb-tablet,bus=usb.0 \

-device intel-hda -device hda-duplex \

-vga virtio -display cocoa,gl=on \

-netdev user,id=net0,hostfwd=tcp::5555-:3389 \

-device virtio-net-device,netdev=net0 \

-device usb-storage,drive=install -drive id=install,media=cdrom,file=~/Windows11*.vhdx

5、首次启动后进入UEFI Shell,输入fs0:回车,再输入startup.nsh加载Windows安装引导程序。

6、安装过程中若出现蓝屏错误代码INACCESSIBLE_BOOT_DEVICE,需重启并进入UEFI设置,将“Boot Order”中Windows Boot Manager移至首位,同时关闭Secure Boot选项。

7、安装完毕后,必须在Windows中安装spice-guest-tools并启用SPICE服务,否则无法使用高分辨率显示、多点触控与共享剪贴板功能。