一、准备工作

1. 关闭虚拟机

2. 扩容磁盘容量

3. 开启虚拟机

二、开始扩容

  1. # fdisk -l

Centos7 磁盘扩容 - 图1
然后对新加的磁盘进行分区操作:

# fdisk /dev/sda

Centos7 磁盘扩容 - 图2
Centos7 磁盘扩容 - 图3
期间,如果需要将分区类型的Linux修改为Linux LVM的话需要在新增了分区之后,选择t,然后选择8e,之后可以将新的分区修改为linux LVM
之后我们可以再次用以下命令查看到磁盘当前情况

# fdisk -l

Centos7 磁盘扩容 - 图4
重启虚拟机格式化新建分区

# reboot

然后将新添加的分区添加到已有的组实现扩容
首先查看卷组名

# vgdisplay

Centos7 磁盘扩容 - 图5
初始化刚刚的分区

# pvcreate /dev/sda3

Centos7 磁盘扩容 - 图6
将初始化过的分区加入到虚拟卷组名

# vgextend 虚拟卷组名 新增的分区
# vgextend centos /dev/sda3

Centos7 磁盘扩容 - 图7
再次查看卷组情况

# vgdisplay

Centos7 磁盘扩容 - 图8
这里可以看到,有30G的空间是空闲的
查看当前磁盘情况并记下需要扩展的文件系统名,我这里因为要扩展根目录,所以我记下的是 /dev/mapper/centos-root

# df -h

Centos7 磁盘扩容 - 图9
扩容已有的卷组容量(这里有个细节,就是不能全扩展满,比如空闲空间是30G,然后这里的话30G不能全扩展上,这里我扩展的是29G)

# lvextend -L +需要扩展的容量 需要扩展的文件系统名 
# lvextend -l +100%FREE /dev/mapper/centos-root

Centos7 磁盘扩容 - 图10
然后我们用命令查看当前卷组

# pvdisplay

Centos7 磁盘扩容 - 图11
这里可以看到,卷组已经扩容了
以上只是卷的扩容,然后我们需要将文件系统扩容

# resize2fs 文件系统名
# resize2fs /dev/mapper/centos-root

这个是网上很多参考资料的用法,但是在这里报错了
Centos7 磁盘扩容 - 图12
解决办法是,首先查看文件系统的格式

# cat /etc/fstab | grep centos-root

Centos7 磁盘扩容 - 图13
这里可以看到,文件系统是xfs,所以需要xfs的命令来扩展磁盘空间

# xfs_growfs 文件系统名
# xfs_growfs /dev/mapper/centos-root

Centos7 磁盘扩容 - 图14
之后我们再次用命令查看磁盘状态

# df -h

Centos7 磁盘扩容 - 图15