虚拟机硬盘扩容
介绍
本文以 CentOS 操作系统为例扩容虚拟机根分区,介绍 LVM(Logical Volume Manager 逻辑卷管理) 虚拟机硬盘扩容和 非 LVM 普通分区虚拟机硬盘扩容教程。
问:如何查看本地机器是否使用LVM管理?
答:执行下面命令,如果没有采用 LVM管理的话,是查看不到卷组,物理卷和逻辑卷的
1 | pvdisplay #查看物理卷 |
一、LVM 扩容
1、查看当前根分区大小
使用以下命令查看到当前根分区大小为 39G,本次操作给 LVM 根分区扩容10G。
1 | df -h |
2、扩容
关闭虚拟机,查看到当前磁盘容量为 60G,我们给它更改为 70G(给根分区扩容10G)。
3、查看容量
使用 df -h
命令查看根分区大小无变化,使用 lsblk
命令查看到总容量已经变为70G,磁盘名称为 sda
。
1 | df -h |
4、磁盘分区
使用以下命令进行磁盘分区,把剩余空间分给sda3 。
1 | fdisk /dev/sda |
5、刷新分区,并创建物理卷
使用 partprobe
命令刷新分区,使用 pvcreate /dev/sda3
创建物理卷。
1 | partprobe /dev/sda |
6、查看卷组名称
使用 vgdisplay
查看卷组名称,由下图可以看出卷组名称为 centos
。
1 | vgdisplay |
7、卷组扩容
使用 vgextend
命令将物理卷 /dev/sda3 扩充到卷组 centos 。
1 | vgextend centos /dev/sda3 |
8、查看逻辑卷的空间状态
使用 lvdisplay
命令查看所有逻辑卷的状态,已经待扩容的逻辑卷 /dev/centos/root
。
1 | lvdisplay |
9、根扩容
使用 lvextend
命令将剩余空间扩展到根分区逻辑卷。
1 | lvextend -l +100%FREE /dev/centos/root |
10、刷新根分区
使用 df -hT
确认文件系统。
如果是 xfs 文件系统使用 xfs_growfs
命令刷新根分区。
如果是 ext2、ext3、ext4 文件系统使用 resize2fs
命令刷新根分区。
1 | # 根据自己的文件系统选择刷新根分区的命令 |
到此扩容到此结束,可使用 df -h
命令查看扩容是否成功。
二、非 LVM 扩容
本章节用于给非 LVM 虚拟机根分区扩容10G。
1、查看当前根分区大小
使用 df -Th
,查看到当前根分区大小为 60G ,文件系统名称为 /dev/sda3 文件系统类型为 xfs 。
2、扩容根分区
关闭虚拟机,扩容硬盘,容量由 60G 扩容到 70G。
3、扩容后状态
通过以下命令查看到硬盘容量已经扩容到70G
1 | df -Th |
4、分区扩展
使用以下命令重建根分区,原理:删除根分区,再新建根分区,更新存储起始或结束ID,达到扩容的效果。
1 | fdisk /dev/sda |
5、刷新分区
使用以下命令刷新分区。
1 | partprobe /dev/sda |
6、刷新根分区
使用 df -hT
确认文件系统。
如果是 xfs 文件系统使用 xfs_growfs
命令刷新根分区。
如果是 ext2、ext3、ext4 文件系统使用 resize2fs
命令刷新根分区。
1 | # 根据自己的文件系统选择刷新根分区的命令 |
7、查看扩容后容量
使用以下命令查看扩容后根分区容量,由下入可知,容量已经扩容到 70G ,扩容成功。
1 | df -Th |
参考文档
🚀感谢以下大佬文档支持!致敬!