1. UEFI 启动报错:Guest has not initialized the display (yet)
这个提示在 QEMU/KVM(CAS 基于此)中通常意味着虚拟机的固件(Firmware)未能正确加载,或者显卡与 UEFI 不兼容。
原因分析:
- 显卡不兼容:CAS 的 UEFI(OVMF)对某些模拟显卡支持不好。如果你的虚拟机配置了“VMware 标准显卡”或默认的 VGA,UEFI 可能无法初始化显示,导致卡住。
- 资源不足:UEFI 固件对内存有一定要求,如果分配内存过小(如低于 2GB),可能无法完成初始化。
- 固件文件损坏/版本不匹配:CAS 的 OVMF 固件文件可能存在问题。
解决方案:
- 更换显卡为 QXL(最有效):
- 在 CAS 界面编辑该虚拟机,找到显卡设置。
- 将显卡类型强制修改为 QXL 高性能显卡。
- 理由:QXL 显卡与 UEFI 的兼容性最好,很多 Linux 和 Windows 虚拟机在 UEFI 模式下必须使用 QXL 才能正常显示。
- 检查并修复 UEFI 固件设置:
- 确认虚拟机的 BIOS 设置确实是 UEFI 启动。
- 如果有“自定义 UEFI 文件”选项,尝试取消勾选(使用默认),或者重新选择系统默认的 OVMF 文件。
- 增加内存:
- 临时将内存增加到 4GB 或以上,排除因内存不足导致固件加载失败的可能。
2. BIOS 启动报错:“找不到启动设备”
当你切换到 BIOS(Legacy)模式启动时提示找不到设备,这进一步印证了磁盘控制器驱动或分区表格式的问题。
原因分析:
- 分区表不匹配:源虚拟机如果是纯 UEFI 安装,硬盘通常是 GPT 分区。如果强行切换到 BIOS(Legacy)模式启动,BIOS 无法识别 GPT 分区的引导信息,就会报“找不到启动设备”。
- 磁盘总线类型错乱:虽然你尝试了 IDE 和 高速(VirtIO/SCSI),但可能在切换过程中配置未生效,或者系统缺少 VirtIO 驱动。
解决方案:
- 不要强行切 BIOS:既然源系统是 UEFI 洁净安装,就坚持使用 UEFI 模式。不要尝试切换到 BIOS,因为 GPT 磁盘在 BIOS 模式下无法启动(除非你进行复杂的修复)。
- 确认磁盘总线设置:
- 在 UEFI 模式下,建议先尝试使用 VirtIO 高速磁盘(如果系统已集成驱动)或 SCSI。
- 注意:Windows 默认安装通常不包含 VirtIO 驱动。如果你必须用高速磁盘,可能需要先在 IDE 模式下进系统安装驱动,再切回高速。但鉴于你现在进不了系统,建议先用 IDE 测试能否在 UEFI 下亮机。
3. 综合建议的操作步骤
建议按照以下顺序尝试,大概率能解决问题:
- 第一步(显卡急救):
- 虚拟机关机。
- 编辑配置:显卡 -> 选择 QXL 高性能显卡。
- BIOS 设置 -> 选择 UEFI 启动。
- 启动虚拟机。如果此时能进入 Windows 欢迎界面,问题解决。
- 第二步(如果第一步无效):
- 检查内存分配,确保至少 2GB 以上。
- 尝试在 CAS 主机侧,找到该虚拟机的 XML 配置或高级设置,确认是否有“TPM”或“安全启动”选项,如果有,尝试关闭它们,因为它们有时会干扰干净的系统启动。
- 第三步(终极手段):
- 如果依然卡住,可能需要将源虚拟机(干净的那个)重新配置为 BIOS + MBR 模式(或者 UEFI + GPT 但注入 VirtIO 驱动),重新封装后再迁移。
暂无评论