起因:我的KVM主机上安装了基于Debian11的 虚拟机母鸡,其他虚拟机都由此克隆而来。因为最初只配置了8G的虚拟硬盘,因此在需要占用比较大的空间的应用时,就比较麻烦。度娘等中文搜索结果没找到答案,只能google了。
这里记录了针对 *.qcow2格式的虚拟硬盘的系统扩容的方法。原有的分区方式是 /dev/sda1~3,sda1 是/boot;sda2 是swap;sda3 是 / 根目录。这里是对根分区进行容量扩展。
一、查看自己的虚拟机磁盘信息
virsh domblklist Vname
注意,虚拟机不能存在snapshot
二、虚拟机关闭状态下扩容
这是直接扩容,新增容量未分区,要进行合并等操作
qemu-img resize /home/Free/VM1.qcow2 +10G
三、虚拟机运行状态下扩容
virsh blockresize VM1 /home/Free/VM1.qcow2 40G
四、利用virt-manager,用LiveCD启动虚拟机,fdisk工具重新分区增加容量
fdisk -l # 显示当前扩容后的总扇区大小和 /dev/sda3 的起始扇区的数字
## 使用fdisk进行重分区
fdisk /dev/sda
d
3
n
3
/dev/sda3的起始扇区
保持默认
w # 写入修改后的分区设置,并退出fdisk
e2fsck -f /dev/sda3
resize2fs /dev/sda3
# 再次显示分区数据
fdisk -l
注意: 在从硬盘登录系统后,再次使用 resize2fs 命令,这样才会在 df -h命令查询时,显示正确的容量信息。
五、初始参数和调整后的参数比较
1. 初始参数如下
2. 重新分区后参数如下
注意: 因为 /dev/sda3 是我的系统的根目录,所以能够正常启动,也说明了数据什么的没有被动过。