本文最后更新于 2024-08-31,文章内容可能已经过时。

案例需求

将/lv1目录动态扩容到3G

案例思路

  1. 查看/lv1目录所对应的逻辑卷是哪一个 /dev/mapper/vg1-lv1
  2. 查看当前逻辑卷所在的卷组vg1剩余空间是否足够
  3. 如果vg1空间不够,得先扩容卷组,再扩容逻辑卷
  4. 如果vg1空间足够,直接扩容逻辑卷

案例实现

步骤:
1. 查看/lv1目录属于哪个卷组
[root@zutuanxue /]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/mapper/vg1-lv1  2.4G  7.5M  2.3G    1% /lv1

[root@zutuanxue /]# lvs
  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root cl  -wi-ao---- <17.00g                                                    
  swap cl  -wi-ao----   2.00g                                                    
  lv1  vg1 -wi-ao----   2.50g                                                    
  lv2  vg1 -wi-a----- 200.00m                                                    
  lv3  vg1 -wi-a----- 664.00m                                                    
2. 卷组的剩余空间
[root@zutuanxue /]# vgs
  VG  #PV #LV #SN Attr   VSize   VFree  
  cl    1   2   0 wz--n- <19.00g      0 
  vg1   2   4   0 wz--n-   3.99g 664.00m
结果:当前卷组空间不足我扩容

3. 扩容逻辑卷所在的卷组
1)首先得有物理设备 /dev/sdb3
2) 将物理设备做成物理卷
[root@zutuanxue /]# pvcreate /dev/sdb3 
  Physical volume "/dev/sdb3" successfully created.
[root@zutuanxue /]# pvs
  PV         VG  Fmt  Attr PSize   PFree  
  /dev/sda2  cl  lvm2 a--  <19.00g      0 
  /dev/sdb1  vg1 lvm2 a--   <2.00g      0 
  /dev/sdb2  vg1 lvm2 a--   <2.00g 464.00m
  /dev/sdb3      lvm2 ---    2.00g   2.00g
  3)将物理卷加入到卷组中(卷组扩容)
[root@zutuanxue /]# vgextend vg1 /dev/sdb3 
  Volume group "vg1" successfully extended
[root@zutuanxue /]# pvs
  PV         VG  Fmt  Attr PSize   PFree  
  /dev/sda2  cl  lvm2 a--  <19.00g      0 
  /dev/sdb1  vg1 lvm2 a--   <2.00g      0 
  /dev/sdb2  vg1 lvm2 a--   <2.00g 464.00m
  /dev/sdb3  vg1 lvm2 a--   <2.00g  <2.00g

注意:
正常情况下,应该先将/dev/sdb3物理设备创建为物理卷再加入到卷组中;如果直接加入卷组,系统会自动帮你将其做成物理卷。

[root@zutuanxue /]# vgs
  VG  #PV #LV #SN Attr   VSize   VFree 
  cl    1   2   0 wz--n- <19.00g     0 
  vg1   3   4   0 wz--n-  <5.99g <2.45g

4. 扩容逻辑卷
[root@zutuanxue /]# lvextend -L 3G /dev/vg1/lv1 
        -L 3G最终的大小
或者
[root@zutuanxue /]# lvextend -L +1.5G /dev/vg1/lv1   -L +1.5G 扩容1.5G

5. 查看结果
[root@zutuanxue /]# lvs
  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root cl  -wi-ao---- <17.00g                                                    
  swap cl  -wi-ao----   2.00g                                                    
  lv1  vg1 -wi-ao----   3.00g       已经扩容到了3G

[root@zutuanxue /]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/mapper/vg1-lv1  2.4G  7.5M  2.3G    1% /lv1
        实际并没有改变

6. 同步文件系统
[root@zutuanxue /]# resize2fs /dev/vg1/lv1    #该命令适用于ext分区
[root@manage01  ~]# xfs_growfs /dev/vg1/lv1  #该命令适用于xfs分区
7. 再次查看验证
[root@zutuanxue /]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/mapper/vg1-lv1  2.9G  7.5M  2.8G    1% /lv1
        扩容成功