站长资源操作系统

Linux中的LVM详解

整理:jimmy2024/11/20浏览2
简介什么是LVM?什么是LVM?LVM(Logical Volume Manager)逻辑卷管理,是一种将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的 分区加入其中,这样可以事项一种磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性,使

什么是LVM?

什么是LVM?LVM(Logical Volume Manager)逻辑卷管理,是一种将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的 分区加入其中,这样可以事项一种磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性,使用普通的磁盘分区,当一个磁盘的分区空间不够使用的时候,可 能就会带来很大的麻烦。使用LVM在一定程度上就可以解决普通磁盘分区带来的问题。 

为什么使用LVM?

LVM通常用于装备大量磁盘的系统,但它同样适于仅有一、两块硬盘的小系统。

小系统使用LVM的益处?

传统的文件系统是基于分区的,一个文件系统对应一个分区。这种方式比较直观,但不易改变:
1.不同的分区相对独立,无相互联系,各分区空间很易利用不平衡,空间不能充分利用;
2.当一个文件系统/分区已满时,无法对其扩充,只能采用重新分区/建立文件系统,非常麻烦;或把分区中的数据移到另一个更大的分区中;或采用符号连接的方式使用其它分区的空间。
3.如果要把硬盘上的多个分区合并在一起使用,只能采用再分区的方式,这个过程需要数据的备份与恢复。
当采用LVM时,情况有所不同:
1.硬盘的多个分区由LVM统一为卷组管理,可以方便的加入或移走分区以扩大或减小卷组的可用容量,充分利用硬盘空间;
2.文件系统建立在逻辑卷上,而逻辑卷可根据需要改变大小(在卷组容量范围内)以满足要求;
3.文件系统建立在LVM上,可以跨分区,方便使用;

大系统使用LVM的益处? 

在使用很多硬盘的大系统中,使用LVM主要是方便管理、增加了系统的扩展性。 在一个有很多不同容量硬盘的大型系统中,对不同的用户的空间分配是一个技巧性的工作,要在用户需求与实际可用空间中寻求平衡。用户/用户组的空间建立在LVM上,可以随时按要求增大,或根据使用情况对各逻辑卷进行调整。当系统空间不足而加入新的硬盘时,不必把用户的数据从原硬盘迁 移到新硬盘,而只须把新的分区加入卷组并扩充逻辑卷即可。同样,使用LVM可以在不停服务的情况下。把用户数据从旧硬盘转移到新硬盘空间中去。 

Linux中的LVM详解


由N个磁盘可以组成一个很大的空间VG1,然后从VG1上面划分需要使用的分区。

Linux中的LVM详解


从剩余空间中划分一部分的磁盘空间给一个分区

这样,当某一个分区的空间不够的时候,这样可以增加这个分区的使用磁盘空间

名词解释

1. PV(Physical Volume):物理卷,处于LVM最底层,可以是物理硬盘或者分区。     
2.PP(Physical Extend):物理区域,PV中可以用于分配的最小存储单元,可以在创建PV的时候制定,如1M, 2M, 4M, 8M, 32M, 64M…组成同一VG中所有PV的PE大小应该相同。     
3.VG(Volume Group):卷组,建立在PV之上,可以含有一个到多个PV。   
4. LV(Logical Volume):逻辑卷,建立在VG之上,相当于原来分区的概念。不过大小可以动态改变。

创建LVM

1、查看系统中新增加的硬盘

Linux中的LVM详解


2、给磁盘分区(创建PV) 在/dev/sdb上划分两个分区

Linux中的LVM详解


Linux中的LVM详解


Linux中的LVM详解


Linux中的LVM详解


Linux中的LVM详解

Linux中的LVM详解


Linux中的LVM详解

Linux中的LVM详解


Linux中的LVM详解


3、用fdisk –l 命令查看分区表

Linux中的LVM详解


4、建好分区后,用pvcreate命令在新建的分区上创建PV

Linux中的LVM详解


5、使用vgcreate命令创建一个名为vgdate的VG,并且将所有的新建的PV加入vgdate

Linux中的LVM详解


6、用lvcreate –L 500M –n lv01 vgdate 命令从VG vgdate中创建一个大小为500M的名为lv01的LV

Linux中的LVM详解


我们创建的第一个LV所在的目录为 /dev/vgdate/lv01
7、使用mkfs /dev/vgdate/lv01命令格式化lv01

Linux中的LVM详解


8、Linux下的文件系统需要被挂载之后才能使用,我们先使用mkdir /date 命令创建一个空目录,然后用 mount /deta/vgdate/lv01 /date 命令将我们的lv01分区挂载到/date目录下,至此我们新创建的lv就可以使用了。

Linux中的LVM详解