QEMU 完全支持启动真实的 U 盘,无需重启即可测试基于 Linux 或 Windows 的可引导 U 盘。
⌨️ 方法一:使用命令行直接启动
以 Linux 系统为例,需要先通过 lsblk 或 fdisk -l 确认 U 盘的设备名称,通常是 /dev/sdX 的形式(例如 /dev/sdb)。
基础命令:
sudo qemu-system-x86_64 -enable-kvm -m 1024 -drive file=/dev/sdX
常用参数详解:
-
-enable-kvm:启用 KVM 硬件加速,大幅提升运行速度。 -
-m 1024:分配 1024MB 内存给虚拟机。 -
-drive file=/dev/sdX:指定使用的物理设备路径。 -
权限问题 :由于直接读写物理设备,需要使用
sudo或以root身份执行。 -
启动顺序 :如果虚拟机无法从U盘启动,可添加
-boot order=d参数强制从该驱动器引导。 -

方法二:Windows 环境操作
由于 Windows 系统锁机制,直接在 QEMU 命令行中映射物理驱动器 (\\.\PhysicalDrive1) 通常会是只读模式。如果需要写入,推荐以下工具:
-
RMPrepUSB :制作启动盘的工具,安装后按
F11键即可启动测试。 -
QEMU Manager:QEMU 的图形化管理工具,在配置中可以直接选择物理磁盘号码(PhysicalDrive Number)。
⚙️ 进阶与高级配置
-
模拟真实 USB 接口:标准配置会将U盘识别为普通硬盘。如需模拟 USB 控制器,可通过命令行进行精确模拟。
-
UEFI 启动 :默认 BIOS 无法启动 UEFI 系统。需下载支持 UEFI 的固件文件(如
OVMF.fd),并添加参数-bios /path/to/OVMF.fd。 -
数据安全建议(-snapshot) :为防止意外写入或破坏原U盘数据,可添加
-snapshot参数。所有更改将仅存在于当次会话中,退出虚拟机后所有改动都会丢失。
💡 常见问题与解决方案
-
无法找到可启动设备:通常因U盘引导记录损坏或 MBR/GPT 格式不匹配导致。可在虚拟机内检查并重建引导记录。
-
U 盘识别为硬盘而非 USB 设备:绝大多数情况不影响启动;若应用依赖检测,则可按"模拟真实 USB 接口"章节配置。
-
Windows 7 x64 启动失败:已知部分 QEMU 版本存在此兼容性问题