LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现。LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。与传统的磁盘与分区相比,LVM为计算机提供了更高层次的磁盘存储。它使系统管理员可以更方便的为应用与用户分配存储空间。在LVM管理下的存储卷可以按需要随时改变大小与移除(可能需对文件系统工具进行升级)。LVM也允许按用户组对存储卷进行管理,允许管理员用更直观的名称(如"sales'、 'development')代替物理磁盘名(如'sda'、'sdb')来标识存储卷。
由四个磁盘分区可以组成一个很大的空间,然后在这些空间上划分一些逻辑分区,当一个逻辑分区的空间不够用的时候,可以从剩余空间上划分一些空间给空间不够用的分区使用。
前面谈到,LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的存储卷,在存储卷上建立文件系统。首先我们讨论以下几个LVM术语:
*物理存储介质(PhysicalStorageMedia)
指系统的物理存储设备:磁盘,如:/dev/hda、/dev/sda等,是存储系统最底层的存储单元。
*物理卷(Physical Volume,PV)
指磁盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。
*卷组(Volume Group,VG)
类似于非LVM系统中的物理磁盘,其由一个或多个物理卷PV组成。可以在卷组上创建一个或多个LV(逻辑卷)。
*逻辑卷(Logical Volume,LV)
类似于非LVM系统中的磁盘分区,逻辑卷建立在卷组VG之上。在逻辑卷LV之上可以建立文件系统(比如/home或者/usr等)。
*物理块(Physical Extent,PE)
每一个物理卷PV被划分为称为PE(Physical Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。所以物理卷(PV)由大小等同的基本单元PE组成。
*逻辑块(Logical Extent,LE)
逻辑卷LV也被划分为可被寻址的基本单位,称为LE。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。
上图所示LVM抽象模型,展示了PV、VG、LV三者之间关系:
和非LVM系统将包含分区信息的元数据保存在位于分区的起始位置的分区表中一样,逻辑卷以及卷组相关的元数据也是保存在位于物理卷起始处的VGDA(卷组描述符区域)中。VGDA包括以下内容:PV描述符、VG描述符、LV描述符、和一些PE描述符。
系统启动LVM时激活VG,并将VGDA加载至内存,来识别LV的实际物理存储位置。当系统进行I/O操作时,就会根据VGDA建立的映射机制来访问实际的物理位置。
1)查看磁盘信息
[root@localhost ~]# df -h
2)使用fdisk -l命令查看系统上的硬盘
[root@localhost ~]# fdisk -l
PS:这里采用/dev/sdb磁盘
3)新建分区
[root@localhost ~]# fdisk /dev/sdb
准备工作就绪
4)创建PV
[root@localhost ~]# pvcreate /dev/sdb1
5)查看PV
[root@localhost ~]# pvdisplay
还可以使用命令pvs 和pvscan 查看简略信息。
[root@localhost ~]# pvs
[root@localhost ~]# pvscan
1、扩容VG
1)查看VG情况
[root@localhost ~]# vgs
2)扩容centos(VG名称)
[root@localhost ~]# vgextend centos /dev/sdb1
说明:centos是原来创建的VG设备的名称,后面接上述的设备名
3)查看vg的信息
[root@localhost ~]# vgdisplay
注:这里已经把VG Size从19G扩容到38.99G,VG扩容成功
说明:
VG Name //VG的名称
VG Size //VG的总大小
PE Size //PE的大小,默认为4MB
Total PE //PE的总数量,2047 x 4MB = 8.00GB
Free PE / Size //剩余空间大小
同样可以使用命令vgs 和vgscan 查看。
[root@localhost ~]# vgs
[root@localhost ~]# vgscan
2、扩容LV
1)查看LV的信息
[root@localhost ~]# lvdisplay
说明:这里默认分了两个逻辑卷,这里我们扩容/dev/centos/root
说明:
LV Path //LV的路径,全名
LV Name //LV的名字
VG Name //所属的VG
LV Size //LV的大小
2)LV扩容
[root@localhost ~]# lvextend /dev/centos/root /dev/sdb1
注:LV Size从17G增加到了36.99G
6)写入文件系统,使扩容生效。
[root@localhost ~]# xfs_growfs /dev/centos/root
注:如果是ext4文件系统,可以使用resize2fs命令替换xfs_growfs命令。
7)验证扩容结果
至此,LVM扩容成功。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。