简介

LVM是 Logical Volume Manager(逻辑卷管理)的简写,LVM将若干个磁盘或者磁盘分区连接为一个整块的卷组,形成一个存储池。管理员可以在卷组上任意创建逻辑卷,并进一步在逻辑卷上创建文件系统。管理员通过LVM可以方便的调整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名、管理和分配。
假设有三块磁盘/dev/sdb、/dev/sdc和/dev/sdd用来划分逻辑卷,LVM模型如图所示:
在这里插入图片描述

LVM基本术语

通过LVM技术,屏蔽了磁盘分区的底层差异,在逻辑上给文件系统提供了一个卷的概念,然后在这些卷上建立相应的文件系统。在了解LVM之前,先熟悉LVM中几个常用的术语。
(1)物理存储设备(The physical media):指系统的存储设备文件,如:/dev/hda1、/dev/sda等等。
(2)物理卷(physical volume):简称PV,物理卷可以是整个硬盘、硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。
(3)卷组(Volume Group):简称VG,可以看成单独的逻辑磁盘,建立在PV之上,一个卷组中至少要包括一个PV,在卷组建立之后可以动态的添加PV到卷组中。卷组的名称可以自定义。
(4)PE(physical extent)物理区域:物理区域是物理卷中可用于分配的最小存储单元,物理区域的大小默认为4MB。物理区域大小一旦确定将不能更改,同一卷组中的所有物理卷的物理区域大小需要一致。
(5) 逻辑卷(logical volume):简称LV,相当于物理分区。逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态的扩展或缩小空间。系统中的多个逻辑卷,可以属于同一个卷组,也可以属于不同的多个卷组。
(6)LE(logical extent)逻辑区域:逻辑区域是逻辑卷中可用于分配的最小存储单元,逻辑区域的大小取决于逻辑卷所在卷组中的物理区域大小。LE的大小和PE的大小一样。
(7)VGDA(Volume Group Descriptor Area)卷组描述符区域:和非LVM系统将包含分区信息的元数据保存在位于分区的起始位置的分区表中一样,逻辑卷以及卷组相关的元数据也是保存在位于物理卷起始处的卷组描述符区域中。VGDA包括以下内容:PV描述符、VG描述符、LV描述符和一些PE描述符。

常用命令
在这里插入图片描述

逻辑卷创建过程

创建物理分区

在使用LVM之前,需要先划分磁盘分区,也就是使用fdisk命令划分磁盘分区。不过在创建分区的时候,需要指定分区类型为linux LVM,对应的ID为8e(其实LVM也能识别linux默认的分区类型83)。
添加一块大小为1G的磁盘。
这里我们可以在虚拟配置中添加:
在这里插入图片描述
**对磁盘进行分区处理:**对硬盘进行分区 1, 2, 3 分区300M明:
mbr引导方式:一块一盘最多支持4个主分区,或者3个主分区,一个扩展分区且分区类型必须是linux lvm
在这里插入图片描述

创建物理卷(pv)

[root@localhost ~]#pvcreate /dev/nvme0n2p1 /dev/nvme0n2p2 /dev/nvme0n2p3 
[root@localhost ~]#pvdisplay
[root@localhost ~]#pvscan
[root@localhost ~]# pvs

创建卷组,逻辑卷

将物理卷/dev/nvme0n2p1 /dev/nvme0n2p2 /dev/nvme0n2p3加入卷组rhce_vg;该卷组的PE尺寸为4MB
[root@localhost ~] vgcreate -s 4M rhce_vg /dev/nvme0n2p1 /dev/nvme0n2p2 /dev/nvme0n2p3
第一个逻辑卷的名字为rhce_lv1,所属卷组为rhce_vg,大小为200M,第二个逻辑卷的名字为rhce_lv1,所属卷组为rhce_vg,大小为400M(该逻辑卷由100个PE组成,PE=4)[root@localhost ~]lvcreate -L 200M -n rhce_lv1 rhce_vg
[root@localhost ~]lvcreate -l 100 -n rhce_lv2 rhce_vg
[root@localhost ~]lvextend -L +100M  /dev/rhce_vg/rhce_lv1 
[root@localhost ~]lvresize -l -25 /dev/rhce_vg/rhce_lv2
[root@localhost ~]lvs

格式化逻辑卷,创建文件系统,并挂载-至此结束结束

[root@localhost ~] mkfs.ext4 /dev/rhce_vg/rhce_lv1
[root@localhost ~]mkfs  -t xfs /dev/rhce_vg/rhce_lv2
[root@localhost ~]lvs[root@localhost ~]cd /data/
[root@localhost ~]mkdir lv1 lv2
[root@localhost ~]mount /dev/rhce_vg/rhce_lv1 /data/lv1
[root@localhost ~]mount /dev/rhce_vg/rhce_lv2 /data/lv2
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐