You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

KVM卡在‘Booting from hard disk’:无Grub的Ubuntu Server 16.04虚拟机导入求助

解决无Grub引导的Hyper-V转KVM虚拟机启动问题

我之前碰到过完全一样的场景——把没装Grub的Hyper-V VHDX转成QCOW2后,KVM直接卡在「Booting from hard disk」界面不动。核心问题就是系统缺少引导加载程序,下面是我亲测有效的修复步骤:

步骤1:用Ubuntu安装镜像启动救援模式

  1. 下载Ubuntu Server 16.04的安装ISO镜像,在KVM中给你的虚拟机添加这个ISO作为光驱设备。
  2. 启动虚拟机,在GRUB引导菜单里选择「Rescue a broken system」(如果没看到这个选项,按Esc调出完整GRUB菜单,找到救援模式选项)。

步骤2:挂载你的系统分区

进入救援模式后,系统会自动扫描磁盘:

  • 当提示「Choose the partition containing the root file system」时,选中你的Ubuntu系统所在的分区(一般是/dev/vda1,具体看扫描结果里的分区信息)。
  • 选择「Mount the partition as read-write」,确认将分区挂载到/target目录。

步骤3:进入chroot环境修复Grub

  1. 挂载完成后,选择「Execute a shell in /target」进入chroot环境(相当于直接操作你的系统分区)。
  2. 安装Grub到磁盘(注意这里要指定磁盘设备,不是分区,比如你的磁盘是/dev/vda):
    grub-install /dev/vda
    
  3. 更新Grub配置文件,让它识别并生成你的系统引导项:
    update-grub
    

步骤4:重启验证

  1. 执行exit退出chroot环境,然后选择「Reboot the system」重启虚拟机。
  2. 重启前记得移除安装ISO镜像,之后虚拟机应该就能正常引导进入系统了。

额外注意事项

  • 转换磁盘时确保命令正确:用qemu-img convert -f vhdx -O qcow2 your-source.vhdx your-target.qcow2完成格式转换,转换后可以用qemu-img check your-target.qcow2验证镜像完整性。
  • 如果救援模式里找不到系统分区,先执行fdisk -l查看磁盘分区情况,确认分区表没有损坏。
  • KVM虚拟机的硬件架构尽量和原Hyper-V保持一致(比如x86_64),避免不必要的兼容性问题。

内容的提问来源于stack exchange,提问作者Miodrag

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:43:59