LVM 逻辑卷管理

本文详细介绍了Linux的LVM(Logical Volume Manager)管理机制,包括PV、PE、VG、LV的概念及作用。重点讲述了如何动态调整文件系统的容量,以及LVM的安装、实际操作流程,如PV、VG、LV的创建和扩展。同时,文章还提到了LVM与RAID的结合使用,以及LVM系统快照的创建和恢复,最后讨论了LVM的删除步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

LVM(Logical Volume Manager)

 

       它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现。


       LVM的重点在于可以动态的调整filesystem的容量!而非效能与数据安全性的保存上,需要数据保存的安全性可以用使用RAID来实现。

 

什么是LVM:PV,PE,VG,LV

PV:Physical Volume 物理卷

PE:Physcial Extend 物理卷扩展

VG:Volume Group  卷组

LV:Logical Volume 逻辑卷

 一.  LVM 软件的安装

由于LVM内嵌于内核,所以我们无需自行安装,如若某些发行版没有安装大家可以自行下载安装。可以使用以下步骤完成:

首先确定系统中是否安装了lvm工具:
[root@wwwroot]#rpm –qa | grep lvm
lvm-1.0.3-4
如果命令结果输入类似于上例,那么说明系统已经安装了LVM管理工具;如果命令没有输出则说明没有安装LVM管理工具,则需要从网络下载或者从光盘装LVMrpm工具包。
安装了LVM的RPM软件包以后,要使用LVM还需要配置内核支持LVM。RedHat默认内核是支持LVM的,如果需要重新编译内核,则需要在配置内核时,进入Multi-deviceSupport(RAIDandLVM)子菜单,选中以下两个选项:
[*]Multipledevicesdriversupport(RAIDandLVM)
<*>Logicalvolumemanager(LVM)Support
然后重新编译内核,即可将LVM的支持添加到新内核中。
为了使用LVM,要确保在系统启动时激活LVM,幸运的是在RedHat7.0以后的版本,系统启动脚本已经具有对激活LVM的支持,在/etc/rc.d/rc.sysinit中有以下内容:
#LVMinitialization
if[-e/proc/lvm-a-x/sbin/vgchange-a-f/etc/lvmtab];then
action$"SettingupLogicalVolumeManagement:"/sbin/vgscan&&/sbin
/vgchange-ayfi
其中关键是两个命令,vgscan命令实现扫描所有磁盘得到卷组信息,并创建文件卷组数据文件/etc/lvmtab和/etc/lvmtab.d/*;vgchange-ay命令激活系统所有卷组。

二.PV,VG,LV 逻辑关系

clip_image004[7]

我们刚刚提到LVM可弹性的变更filesystem的容量,就是通过增加减少PE实现的,通过交换PE进行数据交换,讲原LV内的PE转移到其他装置中以起到降低LV容量。同理逆行操作可以增加LV的容量。

三.实际操作流程


透过pv,vg,lv 的规划后,在利用mkfs就可以将你的lv格式化可以利用的文件系统啦,而且这个文件系统的容量可以动态的扩充或减少,而且里面的数据不会被影响。


                                

                                                   此图流程从下往上

完成以上操作,就可以往LVM写入数据,那么写入数据的方式有两种:加入有两中模式

一。linear:线性模式,当一个分区被用完才会使用另一块分区

二。striped:交错模式,就是把一笔数据拆分成两份,分别写入两个分区

      LVM主要用处是实现一个可以调整的文件系统,而不是建立一个效能为主的磁盘,可以配合硬RAID使用LVM,这样既可以实现数据的效能,保证在硬件层的数据安全,使用LVM又可以保证软件层的数据安全,那么就要使用snapshot功能,稍后简绍,并且这中方式也是大企业实际使用的常用组合。

LVM. 实际操作流程

首先的分好区:

   1.先分出四个patition,system ID 8e

    2.全部partiton整合成一个vg,vg_name自己定

   3. 全部vg给lv,LV名称自己定

   4.最终这个LV格式化ext4的filesystem

这里我已经分好了区,大家可以自己使用fdisk命令实现分区记得将filesystem ID改为 8e,具体实现办法是进入fdisk命令使用以下命令:

[root@localhost ~]# fdisk /dev/sdb
Command (m for help): t
Partition number (1-10): 10
Hex code (type L to list codes): 8e
Changed system type of partition 10 to 8e (Linux LVM)

分区信息:

Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xcfefe37c

   Device Boot      Start      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值