在Linux如何扩增卷组、逻辑卷以及缩减逻辑卷LVM的过程,扩增lvm


今天我们将了解怎样来扩展卷组,扩展和缩减逻辑卷。在这里,我们可以缩减或者扩展逻辑卷管理(LVM)中的分区,LVM也可称之为弹性卷文件系统,需要的朋友可以参考下
今天我们将了解怎样来扩展卷组,扩展和缩减逻辑卷。在这里,我们可以缩减或者扩展逻辑卷管理(LVM)中的分区,LVM也可称之为弹性卷文件系统。

 

前置需求使用LVM创建弹性磁盘存储——第一部分

什么时候我们需要缩减卷?

或许我们需要创建一个独立的分区用于其它用途,或者我们需要扩展任何空间低的分区。遇到这种情况时,使用 LVM我们可以很容易地缩减大尺寸的分区,以及扩展空间低的分区,只要按下面几个简易的步骤来即可。

我的服务器设置 —— 需求操作系统 – 安装有LVM的CentOS 6.5服务器IP – 192.168.0.200

如何扩展卷组以及缩减逻辑卷

扩展逻辑卷

目前,我们已经有一个PV,VG和2个LV。让我们用下面的命令来列出它们。

# pvs# vgs# lvs

Logical Volume Extending

逻辑卷扩展

在物理卷和卷组中没有空闲空间可用了,所以,现在我们不能扩展逻辑卷的大小。要扩展,我们需要添加一个物理卷(PV),然后通过扩展vg来扩展卷组,这样我们就会得到足够大的空间来扩展逻辑卷大小了。所以,首先我们应该去添加一个物理卷。

要添加一个新PV,我们必须使用fdisk来创建一个LVM分区。

# fdisk -cu /dev/sda
选择n来创建新分区。选择p来创建主分区。选择我们需要创建的分区号。如果有其它可用磁盘,请按1。使用t来修改分区类型。输入8e来将分区类型修改为Linux LVM。使用p来打印创建的分区(这里我们没有使用该选项)。按w写入修改。

完成后重启系统。

Create LVM Partition

创建LVM分区

使用fdisk列出并检查我们创建的分区。

# fdisk -l /dev/sda

Verify LVM Partition

验证LVM分区

接下来,使用下列命令来创建新PV(物理卷)。

# pvcreate /dev/sda1

使用下面的命令来验证pv。

# pvs

Create Physical Volume

创建物理卷

扩展卷组

添加该pv到vg_tecmint卷组来扩展卷组的大小,以获取更多空间来扩展lv

# vgextend vg_tecmint /dev/sda1

让我们检查现在正在使用的卷组的大小。

# vgs

Extend Volume Group

扩展卷组

我们甚至可以看到哪个PV用于创建使用中的特定卷组。

# pvscan

Check Volume Group

检查卷组

这里,我们可以看到卷组所处的物理卷。我们已经添加了一个pv,而且它完全空着。在扩展逻辑卷之前,让我们先看看我们所拥有的各个卷组的大小。

Check All Logical Volume

检查所有逻辑卷

LogVol00用于Swap。LogVol01用于/。现在我们有16.50GB大小的空间用于/(root)。当前有4226物理扩展(PE)可用。

现在,我们打算去扩展/分区LogVol01。在扩展后,我们可以像上面那样列出它的大小以确认。我们能可以使用GB或PE来扩展,这一点我已经在LVM第一部分解释过了,这里我使用PE来扩展。

要获取可用的物理扩展大小,运行以下命令。

# vgdisplay

Check Available Physical Size

检查可用的物理扩展

总共有4607空闲PE可用,亦即有18GB空间空间可用。因此,我们可以将我们的逻辑卷扩展到18GB这么大。让我们使用PE大小来扩展。

# lvextend -l +4607 /dev/vg_tecmint/LogVol01

使用+来添加更多空间。在扩展后,我们需要改变文件系统大小,使用以下命令。

# resize2fs /dev/vg_tecmint/LogVol01

Expand Logical Volume

扩展逻辑卷

用来使用物理扩展扩展逻辑卷的命令。这里我们可以看到它从16.51GB扩展到了34GB。如果文件系统已被挂载并处于使用中,改变文件系统大小。要扩展逻辑卷,我们不需要卸载文件系统

现在,让我们看看当前使用的改变大小后的逻辑卷。

# lvdisplay

Resize Logical Volume

改变逻辑卷大小

LogVol01用于扩展的卷 /。扩展后,从16.50GB上升到了34.50GB。C当前扩展,在扩展前有4226,我们已经添加了4607个扩展,因此现在有8833。

现在,如果我们检查可用的vg的话,空闲PE将会是0。

# vgdisplay

查看扩展的结果。

# pvs# vgs# lvs

Verify Resize Partition

验证分区大小改变

添加的新物理卷。卷组vg_tecmint从17.51GB扩展到了35.50GB。逻辑卷LogVol01从16.51GB扩展到了34.50GB。

这里,我们已经完成扩展卷组和逻辑卷的过程。让我们一起迈向逻辑卷管理中一些有趣的部分。

这里,我们将了解如何缩减逻辑卷。人人都说它很危险,在缩减lvm的时候可能会导致灾难。缩减lvm在逻辑卷管理中比其它部分要来得确实有趣得多。

在开始之前,备份好数据总是对的,这样如果出错,就不会头痛了。要缩减逻辑卷,需要小心翼翼地完成5个步骤。在扩展一个卷的时候,我们可以在该卷挂载时扩展它(在线),但对于缩减,我们必须在缩减前卸载文件系统。

让我们来了解一下下面这5个步骤。

卸载文件系统以便缩减。在卸载后检查文件系统。缩减文件系统。5减少当前逻辑卷大小。再检查文件系统以防出错。将文件系统再次挂载回去。

为了演示,我已经创建了独立的卷组和逻辑卷。这里,我将缩减逻辑卷tecmintreducetest。现在它有18GB大小,我们需要将它缩减到10GB而不丢失数据。也就是说,我们需要从18GB中减少8GB。卷中已经有4GB被使用。

18GB ---> 10GB

在缩减大小的时候,我们只需要缩减8GB,所以在缩减后它总计会有10GB。

# lvs

Reduce Logical Volume

缩减逻辑卷

这里,我们可以看到文件系统信息。

# df -h

Check File System Size

检查文件系统大小

卷大小是18GB。它已经使用了3.9GB。可用空间是13GB。

首先,卸载挂载点。

# umount -v /mnt/tecmint_reduce_test/

Unmount Parition

卸载分区

然后,使用以下命令来检查文件系统错误。

# e2fsck -ff /dev/vg_tecmint_extra/tecmint_reduce_test

Scan Parition for Errors

扫描分区错误

注意:必须通过所有文件系统检查的5个步骤,若未完全通过,则你的文件系统可能存在问题。

接下来,缩减文件系统。

# resize2fs /dev/vg_tecmint_extra/tecmint_reduce_test 8GB

Reduce File System

缩减文件系统

使用GB来缩减逻辑卷。

# lvreduce -L -8G /dev/vg_tecmint_extra/tecmint_reduce_test

Reduce Logical Partition

缩减逻辑分区

要使用PE来缩减逻辑卷,我们需要知道默认PE大小和卷组的总PE大小,以进行一次小小的计算来得出准确的缩减大小。

# lvdisplay vg_tecmint_extra

这里,我们需要使用bc命令来做一些小计算来获得10GB的PE大小。

1024MB x 10GB = 10240MB or 10GB10240MB / 4PE = 2048PE

CTRL+D来退出BC。

Calculate PE Size

计算PE大小

使用PE来缩减大小。

# lvreduce -l -2048 /dev/vg_tecmint_extra/tecmint_reduce_test

Reduce Size Using PE

使用PE来缩减大小

将文件系统大小调整回去。在这一步中,如果发生任何错误,这就意味着我们已经将文件系统搞乱了。

# resize2fs /dev/vg_tecmint_extra/tecmint_reduce_test

Resize File System

将文件系统挂载回同样的挂载点。

# mount /dev/vg_tecmint_extra/tecmint_reduce_test /mnt/tecmint_reduce_test/

Mount File System

挂载文件系统

检查分区和文件的大小。

# lvdisplay vg_tecmint_extra

这里,我们可以看到最后的结果,逻辑已经被缩减到10GB。

Verify Logical Volume Size

在本文中,我们已经了解了如何来扩增卷组、逻辑卷以及缩减逻辑卷。在下一部分(第三部分)中,我们将了解如何为逻辑卷做快照并将它恢复到更早的状态。谢谢阅读,希望能帮到大家,请继续关注帮客之家,我们会努力分享更多优秀的文章。


linux逻辑卷管理

LVM(logical volume manager) 逻辑卷管理器

其中主要分为这几个概念
1物理卷-简称PV
物理卷在逻辑卷管理器中属于最底层的,任何的逻辑卷和卷组都必需依靠物理卷来建立,物理卷可以是一个完整的硬盘,也可以是硬盘中的莫一个分区
2卷组-简称VG
卷组是建立在物理卷之上,一个卷组中可以包含一个物理卷组或者多个物理卷
3逻辑卷-简称LV
逻辑卷是建立在卷组之上的,卷组中的空间可以建立多个逻辑卷,并且逻辑卷可以随意从卷组的空闲空间中增减,逻辑卷可以属于一个卷组,也可以属于不同的多个卷组
4 物理区域-简称PE
物理区域是物理卷中最小的可分配储存单元
5 逻辑区域-简称-LE
逻辑区域是逻辑卷中可用于分配的最小储存单元
6 卷组描述区域-简称VGDA
用于描述物理卷,卷组,逻辑卷分配的所由信息

一个建立逻辑卷的流程如下
PV-VG-LV
物理卷包含卷组,卷组包含逻辑卷

二redhat9中使用逻辑卷管理器

1使用vgscan生成默认的配置文件,配置文件在/etc下的lvmconf 和lvmtab 2个文件

2 为逻辑卷管理器分配物理卷
我这里使用一个分区来作/dev/hda9
#fdisk hda
>t
>9
>8e (为LVM分区)
>w
重起
#pvcreate /dev/hda9
使用
#pvdisplay /dev/hda9查看是否建立
这样就建立好了物理卷

3在物理卷中建立卷组
#vgcreate vg0 /dev/hda9 其中vg0为要建立的卷组名程.这里的PE值我们使用默认的4M如需要增大可以使用-L 选想,记住一旦设定以后不可更改PE的值
#vgdisplay 查看是否建立成功

4 在卷组中建立逻辑卷
#lvcreate -L 100M -n vg1 vg0
其中-L 选项表示你想的逻辑卷大小,以后可以用命令增减 -n指定逻辑卷的名程和卷组的名程,也可以使用绝对路径来达到上述目的
#lvdisplay /dev/vg0/vg1
查看是否建立成功

5 为逻辑卷建立文件系统
#mkfs.ext3 /dev/vg0/vg0
然后挂载尝试是否建立成功
#mount /dev/vg0/vg1 /home
这样一个逻辑卷就基本成型了

三 逻辑卷的管理

1增加新的物理卷到卷组
当卷组中没有足够的空间分配给逻辑卷时,可以用给卷组增加物理卷的方法来增加卷组的空间
# vgextend vg0 /dev/hda8
这里注意hda8必需为LVM分区

2 扩充和减小逻辑卷的容量
#e2fsadm -L +100M /dev/vg0/vg1
-L 表示增减空间 +表示加 -表示建
#e2fsadm -L -100M /dev/vg0/vg1
这里要注意文件系统必需是ext2或ext3,而且需要卸载文件系统来执行,减小的时候需要知道剪掉空间的大小,不然会造成丢失
在reiserfs文件系统中未作测试

3 删除逻辑卷-卷组-物理卷 (必需按照先后顺序来执行删除)
#lvremove /dev/vg0/vg1 删除逻辑卷
#vgremove /......余下全文>>
 

LVM逻辑卷最大容量是哪个?

需要知道LVM卷最大容量创建超过256GB的LVM卷需要决定一个LVM逻辑卷能扩展到多大。得出LVM卷所采用的扩展大小解决方案对lvm2创建的LVM卷来说,容量大小取决于kernel的限制 (当然,还有你的磁盘空间)。对lvm1创建的LVM卷来说,LVM逻辑卷最大可能容量取决于所用扩展大小。计算公式是:65534 * 扩展大小 = 最大逻辑卷大小SUSE Linux缺省扩展大小是4MB。 所以,缺省逻辑卷最大值是4MB * 65534 = 256 GB。扩展大小可能取值区间为8KB到16GB,以二进制计。如果设定最大扩展大小,那么最大卷大约有1PB:65534 * 16GB = 1,048,544 GB注意:你所使用的文件系统需要对你的逻辑卷大小提供支持。SLES缺省文件系统为Reiserfs,它最大支持16TB空间。如果你打算对一个已经存在的逻辑卷进行扩展,使用“vgdisplay”命令 查看所用的扩展大小。附加信息从lvm1转换为lvm2的卷大小取决于lvm1的限制。如需更多信息,请查看vgcreate man帮助,“man 8 vgcreate”, 然后搜索“PhysicalExtentSize”字串即可。本文档所涉及商标归相应持有者所有。请参照产品手册中完整的商标权信息。