前提:在使用kvm过程中发现虚拟机内存逐渐不足,因此需要给虚拟机扩容。本地物理机新增一块机械硬盘,挂载目录/hdd,虚拟机镜像默认存放/var/lib/libvirt/images中,我想扩容且将磁盘位置挪到新增的硬盘上去
1、虚拟机关机,切换root账户,查看磁盘所在位置
virsh list --all
virsh domblklist ubuntu20.04
2、查看磁盘信息并删除快照
$qemu-img info /var/lib/libvirt/images/ubuntu20.04.qcow2
#删除快照,使用virsh snapshot-delete始终无法删除当前快照,该快照通过virsh snapshot-list --all查不出
$virsh snapshot-delete ubuntu20.04 ubuntu-kvm1-snap
error: Domain snapshot not found: no domain snapshot with matching name 'ubuntu-kvm1-snap'
#最终使用qemu-img snapshot -d成功删除,暂不知其区别
$qemu-img snapshot -d ubuntu-kvm1-snap /var/lib/libvirt/images/ubuntu20.04.qcow2
3、移动磁盘位置
mv /var/lib/libvirt/images/ubuntu20.04.qcow2 /hdd/libvirt/images/
4、给磁盘扩容
qemu-img resize /hdd/libvirt/images/ubuntu20.04.qcow2 +75G
qemu-img info /hdd/libvirt/images/ubuntu20.04.qcow2
5、修改虚拟机ubuntu20.04的磁盘位置
virsh edit ubuntu20.04 #选择vim
#或者设置默认编辑器
export VISUAL=vim
6、修改虚拟机默认磁盘位置
vim /etc/libvirt/storage/default.xml
7、重启libvirtd服务
systemctl restart libvirtd.service