LVM逻辑卷管理磁盘扩容

判断磁盘是否是LVM管理

[root@localhost ~]# fdisk -l
磁盘 /dev/sda:214.7 GB, 214748364800 字节,419430400 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000a7bc6

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200   419430399   208665600   8e  Linux LVM
若分区类型为 Linux LVM(代码8e),则使用LVM.
若分区类型为 Linux(代码83)、swap(代码82)等常规类型,则未用于 LVM。

简版描述

1:pvcreate /dev/vdb #将物理分区vdb磁盘建立成为PV
2:vgextend VolGroup /dev/vdb #用vgs看组名 例如:centos
3:lvextend -L +49G /dev/mapper/VolGroup-lv_root 
4: 若根分区为ext,则执行resize2fs /dev/mapper/VolGroup-lv_root
若为其他,则执行 xfs_growfs /dev/mapper/VolGroup-lv_root

完整步骤

查看系统盘信息

#查看系统盘 有两个盘sda sdb
[root@wj ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0  200G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0  199G  0 part 
  ├─centos-root 253:0    0   50G  0 lvm  /
  ├─centos-swap 253:1    0    2G  0 lvm  [SWAP]
  └─centos-home 253:2    0  147G  0 lvm  /home
sdb               8:16   0   20G  0 disk 
sr0              11:0    1  988M  0 rom  

[root@wj ~]# df -Th
文件系统                类型      容量  已用  可用 已用% 挂载点
devtmpfs                devtmpfs  898M     0  898M    0% /dev
tmpfs                   tmpfs     910M     0  910M    0% /dev/shm
tmpfs                   tmpfs     910M  9.5M  901M    2% /run
tmpfs                   tmpfs     910M     0  910M    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs        50G  4.3G   46G    9% /
/dev/sda1               xfs      1014M  153M  862M   16% /boot
/dev/mapper/centos-home xfs       147G   33M  147G    1% /home
tmpfs                   tmpfs     182M     0  182M    0% /run/user/

查看组名

[root@localhost ~]# vgs
  VG     #PV #LV #SN Attr   VSize    VFree
  centos   1   3   0 wz--n- <199.00g 4.00m

将物理分区vdb磁盘建立成为PV

#将物理分区vdb磁盘建立成为PV
[root@wj ~]# pvcreate /dev/sdb
  Physical volume "/dev/sdb" successfully created.

将sdb盘加入到centos组内

#将sdb盘加入到centos组内
[root@wj ~]# vgextend centos /dev/sdb
  Volume group "centos" successfully extended

指定大小加入到实际在用的组内/dev/mapper/centos-root

#方式1: 将指定大小加入到实际在用的组内/dev/mapper/centos-root
[root@wj ~]# lvextend -L +20G /dev/mapper/centos-root
  Size of logical volume centos/root changed from 50.00 GiB (12800 extents) to 70.00 GiB (17920 extents).
  Logical volume centos/root successfully resized.
#方式2:增加卷组中所有可用空间
lvextend -L +100%FREE /dev/mapper/centos-root

区别:
lvextend -L +20G /dev/mapper/centos-root
作用:将逻辑卷 /dev/mapper/centos-root 的大小增加 20GB。
特点:无论卷组(Volume Group)中剩余多少可用空间,都只扩展固定的 20GB。如果可用空间不足 20GB,命令会失败。
lvextend -L +100%FREE /dev/mapper/centos-root
作用:将逻辑卷 /dev/mapper/centos-root 的大小增加卷组中所有可用空间。
特点:会耗尽卷组内的全部空闲空间,使该逻辑卷成为卷组中唯一占用空间的逻辑卷。适合需要最大化利用剩余空间的场景。

刷新lv

#刷新lv
[root@wj ~]# xfs_growfs /dev/mapper/centos-root
meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=3276800 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=13107200, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=6400, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 13107200 to 18350080

#已增加20G扩容到了70G
[root@wj ~]# df -h  
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 898M     0  898M    0% /dev
tmpfs                    910M     0  910M    0% /dev/shm
tmpfs                    910M  9.5M  901M    2% /run
tmpfs                    910M     0  910M    0% /sys/fs/cgroup
/dev/mapper/centos-root   70G  4.3G   66G    7% /
/dev/sda1               1014M  153M  862M   16% /boot
/dev/mapper/centos-home  147G   33M  147G    1% /home
tmpfs                    182M     0  182M    0% /run/user/0

常见问题

                                                                    
若根分区为ext,则执行resize2fs /dev/mapper/VolGroup-lv_root
若为其他,则执行 xfs_growfs /dev/mapper/VolGroup-lv_root

错误1:由于系统为centos7系统,文件格式为xfs
[root@jituan-xiaofei-docker01 ~]# resize2fs /dev/centos/root
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block while trying to open /dev/centos/root
Couldn't find valid filesystem superblock.

THE END
点赞6 分享