LVM创建步骤:

使用pvs或者pvdisplay命令查看是否有物理卷

新建分区,然后fdisk管理分区,将hex code改为8e,即linux lvm

如果用硬盘做LVM,不用改hex code

Linux环境下创建、扩展以及缩减LVM_Linux

创建物理卷

pvcreate /dev/sdb1 /dev/sdc1

Linux环境下创建、扩展以及缩减LVM_lvm_02

 

创建卷组

vgcreate vg0 -s 16M /dev/sd{b,c}1

-s:指定每一块pe的大小

Linux环境下创建、扩展以及缩减LVM_逻辑卷_03

 

创建逻辑卷

lvcreate -n lv0 -L 2G vg0

-n:对逻辑卷起名

-l: 取多少个pe大小,如果按本题中每块pe大小为16M,-l 100即为取1600M大小,或者-l 50%FREE意为分取50%空间大小

-L:指定取多少pe大小,直接指定大小,不用计算

Linux环境下创建、扩展以及缩减LVM_lvm_04

Linux环境下创建、扩展以及缩减LVM_lvm_05

 

创建文件系统

mkfs.ext4 /dev/vg0/lv0

mkfs.ext3 /dev/vg0/lv1

Linux环境下创建、扩展以及缩减LVM_Linux_06

挂载,并写入/etc/fstab配置文件

Linux环境下创建、扩展以及缩减LVM_lvm_07

 

扩容LV

扩容时候要求逻辑卷卷组必须有空间,如果逻辑卷也满了,需要加新的物理卷

先将/dev/sdd或者hex code改为8e的分区做pv

pvcreate /dev/sdd

Linux环境下创建、扩展以及缩减LVM_Linux_08

之后将pv加入卷组

vgextend vg0 /dev/sdd

Linux环境下创建、扩展以及缩减LVM_逻辑卷_09

Linux环境下创建、扩展以及缩减LVM_逻辑卷_10

逻辑卷扩展

对lv0逻辑卷加2G容量,lvextend -L +2G /dev/vg0/lv0

Linux环境下创建、扩展以及缩减LVM_lvm_11

扩展后文件系统有差异,需要统一文件系统,因为是ext文件系统,使用指令

resize2fs /dev/vg0/lv0,命令后跟设备名

如果是xfs文件系统,使用xfs_growfs /app/lv0,命令后跟挂载点

Linux环境下创建、扩展以及缩减LVM_逻辑卷_12

 

或者在逻辑卷扩容时候,

lvextend -r -L +1.5G /dev/vg0/lv0

Linux环境下创建、扩展以及缩减LVM_逻辑卷_13

 

缩减LV

xfs不支持缩减,ext可以缩减,缩减可能会造成数据丢失,因此缩减前需要备份数据

首先取消挂载umount /app/lv0,再检查分区完整性fsck -f /dev/vg0/lv0,否则无法到达下一步

Linux环境下创建、扩展以及缩减LVM_lvm_14

 

其次缩减文件系统到2.5G,resize2fs /dev/vg0/lv0 2.5G

Linux环境下创建、扩展以及缩减LVM_逻辑卷_15

 

继续缩减容量到2.5G,lvreduce -L 2.5G /dev/vg0/lv0

Linux环境下创建、扩展以及缩减LVM_lvm_16

最后重新挂载