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 版本存在此兼容性问题

