物理储存介质 存储最底层的存储单元
物理卷(PV) LVM的基本存储逻辑块
卷组(VG) 由物理卷组成
逻辑卷(LV) 在卷组中分出
PE (physical extent) 能被LVM寻址的最小单元
####lvm逻辑卷####
新建两个分区,改变分区id为8e(lvm)
mkdir /date ##新建一个挂载目录
pvcreate /dev/vdb1 ##将物理硬盘分区初始化为物理卷,以便lvm使用
vgcreate vg0 /dev/vdb1 ##创建lvm卷组 起名为vg0
lvcreate -L 100M -n lv0 vg0 ##创建100M大小的名字为lv0的lvm逻辑卷(使用的卷组为vg0)
mkfs.xfs /dev/vg0/lv0 ##格式化
mount /dev/vg0/lv0 /date ##挂载
lvextend -L 200M /dev/vg0/lv0 ##修改逻辑卷大小
xfs_growfs /dev/vg0/lv0 ##做改变操作后需要同步文件
####拉伸设备###
当需要拉伸的逻辑卷大小超过了卷组大小,则需要给卷组做拉伸
pvcreate /dev/vdb2 ##将物理硬盘vdb2分区初始化为物理卷
vgextend vg0 /dev/vdb2 ##将物理卷加到vg0卷组中
lvextend -L 500M /dev/vg0/lv0 ##修改逻辑卷大小
xfs_growfs /dev/vg0/lv0 ##做改变操作后需要同步文件
####缩减卷组大小###
如果想删除卷组里的设备,必须在挂载之前将lvm卷格式改为.ext4格式
[root@localhost ~]# umount /date
[root@localhost ~]# mkfs.ext4 /dev/vg0/lv0
[root@localhost ~]# mount /dev/vg0/lv0 /date/ ##挂载
[root@localhost ~]# resize2fs /dev/vg0/lv0 ##resize2fs命令用来增大或缩小未加载的文件系统的大小,如果文件系统处于挂载状态,那么它只能做扩容
[root@localhost ~]# umount /date/ ##卸载挂载
[root@localhost ~]# e2fsck -f /dev/vg0/lv0 ##扫描
[root@localhost ~]# mount /dev/vg0/lv0 /date/ ##挂载
[root@localhost ~]# lvreduce -L 200M /dev/vg0/lv0 #缩减lvm卷占用的大小
如果想要删除正在使用的物理卷,则需要将使用的物理卷同步到另一个物理卷
[root@localhost ~]# pvmove /dev/vdb1 /dev/vdb2
[root@localhost ~]# vgreduce vg0 /dev/vdb1 ##将vdb1物理卷从vg0卷组中删除
###lvm快照###
[root@localhost ~]# lvcreate -L 20M -n lv0-backup -s /dev/vg0/lv0 ##给/dev/vg0/lv0拍快照
[root@localhost ~]# mount /dev/vg0/lv0-backup /mnt/ ##将快照挂载到/mnt/里
###测试###
[root@localhost mnt] touch file{1..3}
[root@localhost mnt]# ls
file1 file2 file3 lost+found ###在/mnt下建立几个文件
[root@localhost ~]# lvcreate -L 20M -n lv0-backup -s /dev/vg0/lv0 ##拍张快照
[root@localhost ~]# umount /mnt/ ###卸载挂载(mnt里边东西都没有)
[root@localhost ~]# mount /dev/vg0/lv0-backup /mnt/ ##挂载
[root@localhost ~]# ls /mnt/
file1 file2 file3 lost+found ##查看/mnt/ 看之前的文件是否存在
###删除逻辑卷##
删除lvm卷的顺序跟建立lvm卷的顺序相反
umount /mnt
umount /date ##卸载挂载
lvremove /dev/vg0/lv0-backup ##删除快照
lvremove /dev/vg0/lv0 ##删除lvm卷
vgremove vg0 ##删除卷组
pvremove /dev/vdb1 ##删除物理卷1
pvremove /dev/vdb2 ##删除物理卷2
pvs ##查看