LVM(逻辑卷管理详解)

Posted liuwentaolaji

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LVM(逻辑卷管理详解)相关的知识,希望对你有一定的参考价值。

       

        想象一下,当初我们安装主机的时候,只给了它50G内存,随着时间的增长,文件的使用者过多导致文件系统不够大,这时会怎样?我们大多数人会重新再安装一个硬盘,然后分区格式化,然后再复制数据等等。这样一个过程过于麻烦了一些,也更容易浪费磁盘空间,但我们有更简单的方法来扩展我们的磁盘空间,那就是LVM。

 

一.LVM介绍

技术分享图片

LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制。
LVM - 优点:
LVM通常用于装备大量磁盘的系统,但它同样适于仅有一、两块硬盘的小系统。

小系统使用LVM的益处:

传统的文件系统是基于分区的,一个文件系统对应一个分区。这种方式比较直观,但不易改变:

1.不同的分区相对独立,无相互联系,各分区空间很易利用不平衡,空间不能充分利用;

2.当一个文件系统/分区已满时,无法对其扩充,只能采用重新分区/建立文件系统,非常麻烦;或把分区中的数据移到另一个更

大的分区中;或采用符号连接的方式使用其它分区的空间。

3.如果要把硬盘上的多个分区合并在一起使用,只能采用再分区的方式,这个过程需要数据的备份与恢复。

当采用LVM时,情况有所不同:

1.硬盘的多个分区由LVM统一为卷组管理,可以方便的加入或移走分区以扩大或减小卷组的可用容量,充分利用硬盘空间;

2.文件系统建立在逻辑卷上,而逻辑卷可根据需要改变大小(在卷组容量范围内)以满足要求;

3.文件系统建立在LVM上,可以跨分区,方便使用;

大系统使用LVM的益处:

1、在使用很多硬盘的大系统中,使用LVM主要是方便管理、增加了系统的扩展性。

2、在一个有很多不同容量硬盘的大型系统中,对不同的用户的空间分配是一个技巧性的工作,要在用户需求与实际可用空间中寻求

平衡。

3、用户/用户组的空间建立在LVM上,可以随时按要求增大,或根据使用情况对各逻辑卷进行调整。当系统空间不足而加入新的硬

盘时,不必把用户的数据从原硬盘迁移到新硬盘,而只须把新的分区加入卷组并扩充逻辑卷即可。同样,使用LVM可以在不停服务的

情况下。把用户数据从旧硬盘转移到新硬盘空间中去。

 

二.LVM的基础概念

1.pv(物理卷)

pv物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块。物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘。

2.VG(卷组)

卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。

3.LV(逻辑卷)

逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷要以属于同一个卷组,也可以属于不同的多个卷组。

4.PE(物理区域)

物理区域是物理卷中可用于分配的最小存储单元,物理区域的大小可根据实际情况在建立物理卷时指定。物理区域大小一旦确定将不能更改,同一卷组中的所有物理卷的物理区域大小需要一致。

 VG,PE,LV之间关系如下图所示:

 技术分享图片

LVM将一些零碎的磁盘分区(PV)合并成一个较大的磁盘(VG),然后再根据需要对这个较大的磁盘(VG)划分成不同的小分区(LV),需要注意的是,这些小的分区是可以动态的扩展与缩小的,这就是LVM。

  

三.LVM的实现

创建LVM:

1.给磁盘划分分区或者在虚拟机上增加新的硬盘,如果是分区,分区ID设置为8e。

 2.创建PV:

pvcreate:将磁盘分区创建为PV;

pvs:查看目前PV里面的磁盘;

pvdisplay:显示出目前系统PV的状态

3.创建VG:

vgcreate:创建VG;

vgs:搜寻系统上的VG;

vgdisplay:显示目前系统上VG的状态

3.创建逻辑卷LV

lvcreate:创建逻辑卷;

lvs:查看系统上的lv;

lvdisplay:显示目前系统上lv的状态

 4.文件系统阶段

对lv进行格式化挂载

(1)mkfs -t ext4 

(2)mkdir /mnt/lvm

(3)mount加要挂载的内容

四.扩展与缩小逻辑卷

1.扩展逻辑卷

首先要确定扩展多大,并确定当前逻辑卷所在的卷组有足够的空闲空间可用,扩展时要先扩展物理边界,在扩张逻辑边界。

lvextend -L +500M /dev/vgmage/lv01
resize2fs /dev/vgmage/lv01 或 lvextend中指定-r

2.缩小逻辑卷

确定要缩减为多大,至少能容纳原有的所有数据,逻辑卷缩减有风险,所以要卸载并强行检测文件系统

1.先卸载逻辑卷lv

2.然后通过e2fsck命令检测逻辑卷上空余的空间

3.使用resize2fs将文件系统减少到3G

4.再使用lvreduce命令将逻辑卷减少到3G

注意,文件系统大小和逻辑卷大小一定要保持一致才行,如果逻辑卷大于文件系统,由于部分区域未格式化成文件系统会造成空间的浪费,如果逻辑卷小于文件系统,那数据就出问题了

 

以上是关于LVM(逻辑卷管理详解)的主要内容,如果未能解决你的问题,请参考以下文章

逻辑卷管理器(LVM)以及快照(特殊逻辑卷)的用法

谁都能学的Linux-详解LVM存储技术逻辑卷管理器

Linux逻辑卷管理lvm2的详解

LVM(逻辑卷管理详解)

Linux系统下lvm逻辑卷逻辑卷快照及虚拟数据优化器vdo详解

Linux LVM逻辑卷配置过程详解