问题:我使用libvirt和virt-manager在Linux系统上创建虚拟机。我注意到虚拟机映像位于/var/lib/libvirt/images目录中。有没有办法改变默认的虚拟机镜像路径?
libvirt及其GUI前端virt-manager可以使用不同的虚拟机管理程序(例如LVM和Xen)创建和管理VM。默认情况下,所有虚拟机映像都是通过/var/lib/libvirt/images目录中的libvirt创建的。然而,有时这并不是我们想要的。例如,这里的/var/lib/libvirt/images中的磁盘分区的大小是有限的。或者您希望将所有虚拟机映像存储在特定的存储库中以进行管理。
事实上,您可以轻松更改libvirt映像的默认目录或将其称为“存储池”。
有两种方法可以更改默认存储池。
方法一:Virt-ManagerGUI
如果您使用的是virt-managerGUI程序,更改默认存储池非常简单。
访问virt-managerGUI菜单“编辑”-“连接详细信息”。
您可以看到默认的存储池,如下所示。在窗口左下角,单击十字按钮将停止默认存储池。停止存储池后,单击右侧的垃圾桶即可删除该存储池。请注意,此操作不会删除池中的图像。
现在单击左侧的加号以添加新的存储池。
输入新存储池的名称(例如:default)并选择存储池类型。在此示例中,选择“文件系统目录”,因为我们仅更改存储池目录。
输入新的存储池路径(例如/storage)。
此时,当您创建新的虚拟机时,新的存储池应该会自动启动并使用。
方法2:Virsh命令行
更改默认存储池目录的另一种方法是使用libvirt包中的virsh命令行工具。
首先,运行以下命令导出默认存储池XML定义。
$
使用文本编辑器打开XML文件,并使用新地址编辑节点中的/var/lib/libvirt/images。
XML/HTMLCode将内容复制到剪贴板
pooltype='dir'namedefault/nameuuid0ec0e393-28a2-e975-feec-0c7356f38d08/uuidcapacityunit='bytes'975762788352/capacityallocationunit='bytes'530052247552/allocationavailableunit='bytes'445710540800/可用源/source/源目标路径/var/lib/libvirt/images/path /images/ 删除当前默认池。$virshpool-destroydefault
Pooldefaultdestroyed
现在根更新的XML文件创建一个新的存储池。
$
此时默认池已经更改为新地址,可以使用了。
上一篇:选择虚拟机的位置
下一篇:vmware虚拟机默认路径