virsh通过xml 创建虚拟机

本文介绍如何使用virsh list检查当前运行的虚拟机,并通过复制现有虚拟机的XML配置文件来创建新的虚拟机。文章详细说明了修改XML文件的过程,包括更改虚拟机名称和删除UUID,以及系统如何为新虚拟机自动生成UUID。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过virsh list知道目前只有一个虚拟机

找到定义这个虚拟机的xml

复制一份xml,并修改name为自己要建虚拟机的name,删掉uuid

可以看到新建的虚拟机已经起来了

成功后再次对照两个xml的对比可以之,系统会自动在xml中写入uuid




### 使用 `virsh` 创建虚拟机的方法 `virsh` 是一个功能强大的工具,用于管理 KVM 虚拟机。通过 `virsh` 命令,可以定义、启动、停止和管理虚拟机。以下是使用 `virsh` 创建虚拟机的详细方法[^1]。 #### 1. 准备工作 在创建虚拟机之前,需要准备以下内容: - **磁盘文件**:虚拟机的磁盘文件(例如 `.qcow2` 或 `.img` 格式)。 - **操作系统镜像**:用于安装操作系统的 ISO 文件。 - **网络配置**:确保网络桥接或 NAT 配置正确。 #### 2. 安装必要的软件 确保系统已安装 `libvirt` 和相关工具: ```bash yum install libvirt virt-install qemu-kvm -y ``` #### 3. 创建磁盘文件 如果尚未创建磁盘文件,可以使用 `qemu-img` 命令创建: ```bash qemu-img create -f qcow2 /var/lib/libvirt/images/centos2.qcow2 20G ``` #### 4. 使用 `virt-install` 创建虚拟机 `virt-install` 是一个方便的工具,用于快速创建虚拟机。以下是一个示例命令: ```bash virt-install \ --virt-type kvm \ --name centos2 \ --memory 1024 \ --vcpus 2 \ --cdrom=/usr/local/src/CentOS-7-x86_64-Minimal-1810.iso \ --disk path=/var/lib/libvirt/images/centos2.qcow2,format=qcow2,bus=virtio \ --network bridge=br0 \ --graphics vnc,listen=0.0.0.0 \ --noautoconsole \ --autostart ``` 上述命令将创建一个名为 `centos2` 的虚拟机,并使用指定的 ISO 文件进行安装[^1]。 #### 5. 导出虚拟机配置文件 创建虚拟机后,可以导出其 XML 配置文件以供后续迁移或修改: ```bash virsh dumpxml centos2 > /var/lib/libvirt/images/centos2.xml ``` #### 6. 使用 `virsh define` 定义虚拟机 如果已有虚拟机XML 配置文件,可以通过以下命令定义虚拟机: ```bash virsh define /var/lib/libvirt/images/centos2.xml ``` #### 7. 启动虚拟机 定义虚拟机后,可以使用以下命令启动它: ```bash virsh start centos2 ``` #### 8. 添加额外磁盘 如果需要为虚拟机添加额外磁盘,可以使用以下命令: ```bash virsh attach-disk centos2 /var/lib/libvirt/images/extra_disk.qcow2 vdb --cache none --persistent ``` #### 9. 修改虚拟机配置 如果需要修改虚拟机的配置,可以编辑其 XML 文件并重新定义: ```bash virsh edit centos2 ``` #### 10. 迁移虚拟机 在迁移虚拟机时,需要确保磁盘文件和配置文件完整无误。以下是迁移的基本步骤: 1. 关闭虚拟机。 2. 复制磁盘文件到目标主机。 3. 修改 XML 文件中的路径、UUID 和 MAC 地址。 4. 在目标主机上使用 `virsh define` 导入配置文件[^4]。 --- ### 示例代码 以下是一个完整的脚本示例,用于创建虚拟机并附加磁盘: ```bash # 创建磁盘文件 qemu-img create -f qcow2 /var/lib/libvirt/images/ubuntu.qcow2 20G # 使用 virt-install 创建虚拟机 virt-install \ --virt-type kvm \ --name ubuntu \ --memory 2048 \ --vcpus 2 \ --cdrom=/path/to/ubuntu.iso \ --disk path=/var/lib/libvirt/images/ubuntu.qcow2,format=qcow2,bus=virtio \ --network bridge=br0 \ --graphics vnc,listen=0.0.0.0 \ --noautoconsole \ --autostart # 附加额外磁盘 virsh attach-disk ubuntu /var/lib/libvirt/images/extra_disk.qcow2 vdb --cache none --persistent ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值