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

如何创建KVM虚拟机的.qcow2镜像并通过virt-install恢复原虚拟机

操作步骤

一、创建原KVM虚拟机的qcow2镜像备份

  1. 确保虚拟机数据一致

    • 优先关闭目标虚拟机(避免磁盘数据不一致):
      virsh shutdown <你的虚拟机名称>
      
    • 若无法关机,可临时暂停虚拟机(关机更稳妥):
      virsh suspend <你的虚拟机名称>
      
  2. 定位原虚拟机的磁盘路径
    执行命令查看虚拟机的磁盘设备及对应路径:

    virsh domblklist <你的虚拟机名称>
    

    输出示例:

    Target   Source
    ------------------------------------------------
    vda      /var/lib/libvirt/images/original-vm.qcow2
    

    记录Source列的磁盘路径。

  3. 生成qcow2格式备份镜像
    使用qemu-img convert命令完成备份(支持压缩,若原镜像已是qcow2也适用):

    # 基础备份
    qemu-img convert -O qcow2 <原磁盘路径> <备份镜像路径,如/backup/vm-backup.qcow2>
    
    # 带压缩的备份(生成更小的镜像文件)
    qemu-img convert -O qcow2 -c <原磁盘路径> <备份镜像路径>
    

二、使用virt-install结合备份镜像与ISO恢复虚拟机

运行virt-install命令,指定备份镜像、ISO文件及硬件参数:

virt-install \
  --name <新虚拟机名称> \
  --memory 2048 \          # 内存大小(MB),按需调整
  --vcpus 2 \              # CPU核心数,按需调整
  --disk path=/backup/vm-backup.qcow2,format=qcow2 \
  --cdrom /path/to/your/os.iso \  # 对应系统的ISO文件路径
  --boot hd,cdrom \        # 优先从备份磁盘启动,失败则从ISO引导(用于系统修复)
  --graphics vnc,listen=0.0.0.0 \  # 启用VNC远程连接,按需调整
  --network bridge=virbr0 \ # 使用默认桥接网络,按需替换为你的桥接设备
  --os-variant ubuntu22.04 # 对应系统版本,可通过`osinfo-query os`查询支持选项

关键参数说明

  • --boot hd,cdrom:优先尝试从备份磁盘启动,原系统引导正常则直接进入;若引导失败,可通过ISO进入救援模式修复。
  • --os-variant:指定系统版本能帮助libvirt优化虚拟机配置,执行osinfo-query os可列出所有支持的系统变体。
  • 若无需图形界面,可替换--graphics参数为--graphics none --console pty,target_type=serial,通过串口连接虚拟机。

三、后续操作

  • 虚拟机启动后,若原系统正常引导,后续启动可移除--cdrom参数,直接从备份磁盘启动。
  • 若需修复系统,进入ISO的救援模式,挂载备份磁盘进行引导修复或配置调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 02:26:19