创建虚拟机及创建后常见操作

概述

使用 virt-install 最佳实践中的示例,在 CLI 创建 VM 时指定 vnc 并监听在 0.0.0.0 上,最简单的命令只需要指定网络、连接显示的方式、系统版本、cpu、内存即可,其他虚拟设备都会由 virt-install 自动添加。并不影响性能和使用等方面。

使用 VNC 客户端连接 VM 并安装操作系统。

可选的组件

安装 cloud-init

安装基本工具

安装完成后

根据虚拟化调试和优化指南调优,virsh edit XXX 修改文件

使用 systemctl enable serial-getty@ttyS0.service --now 启动 serial-getty 服务,以便通过 virsh console 命令连接虚拟机

压缩 qcow2 文件,创建 backing file 的 qcow2 和 xml 文件当做模板以便批量创建虚拟机所用

  • qemu-img convert -c -O qcow2 my-domain.qcow2 my-domain-new.qcow2

备份

创建 VM 的 XML 文件备份

virsh dumpxml --domain my-domain > /tmp/my-domain.xml

删除 domain.uuid 字段及 domain.devices.interface(type=network).mac 字段

若有其他网络,还需要备份网络 XML

virsh net-dumpxml net2 > /tmp/net2

在新机器上直接定义虚拟机

把 my-domain.qcow2 放到 /var/lib/libvirt/images/ 目录下;xml 放在 /tmp/ 下,然后直接 define 虚拟机

virsh define /tmp/my-domain.xml
virsh net-define /tmp/net2.xml
virsh net-autostart net2
virsh net-start net2

virsh start my-domain

最后修改 October 25, 2026: update: dsh plugins. prompt (154ccb81)