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

前置需求使用LVM创建弹性磁盘存储——第一部分
什么时候我们需要缩减卷?
或许我们需要创建一个独立的分区用于其它用途,或者我们需要扩展任何空间低的分区。遇到这种情况时,使用 LVM我们可以很容易地缩减大尺寸的分区,以及扩展空间低的分区,只要按下面几个简易的步骤来即可。
我的服务器设置 —— 需求操作系统 – 安装有LVM的CentOS 6.5服务器IP – 192.168.0.200
如何扩展卷组以及缩减逻辑卷
扩展逻辑卷
目前,我们已经有一个PV,VG和2个LV。让我们用下面的命令来列出它们。
# pvs# vgs# lvs

逻辑卷扩展
在物理卷和卷组中没有空闲空间可用了,所以,现在我们不能扩展逻辑卷的大小。要扩展,我们需要添加一个物理卷(PV),然后通过扩展vg来扩展卷组,这样我们就会得到足够大的空间来扩展逻辑卷大小了。所以,首先我们应该去添加一个物理卷。
要添加一个新PV,我们必须使用fdisk来创建一个LVM分区。
# fdisk -cu /dev/sda
选择n来创建新分区。选择p来创建主分区。选择我们需要创建的分区号。如果有其它可用磁盘,请按1。使用t来修改分区类型。输入8e来将分区类型修改为Linux LVM。使用p来打印创建的分区(这里我们没有使用该选项)。按w写入修改。
完成后重启系统。

创建LVM分区
使用fdisk列出并检查我们创建的分区。
# fdisk -l /dev/sda

验证LVM分区
接下来,使用下列命令来创建新PV(物理卷)。
# pvcreate /dev/sda1
使用下面的命令来验证pv。
# pvs

创建物理卷
扩展卷组
添加该pv到vg_tecmint卷组来扩展卷组的大小,以获取更多空间来扩展lv。
# vgextend vg_tecmint /dev/sda1
让我们检查现在正在使用的卷组的大小。
# vgs

扩展卷组
我们甚至可以看到哪个PV用于创建使用中的特定卷组。
# pvscan
检查卷组
这里,我们可以看到卷组所处的物理卷。我们已经添加了一个pv,而且它完全空着。在扩展逻辑卷之前,让我们先看看我们所拥有的各个卷组的大小。
检查所有逻辑卷
LogVol00用于Swap。LogVol01用于/。现在我们有16.50GB大小的空间用于/(root)。当前有4226物理扩展(PE)可用。
现在,我们打算去扩展/分区LogVol01。在扩展后,我们可以像上面那样列出它的大小以确认。我们能可以使用GB或PE来扩展,这一点我已经在LVM第一部分解释过了,这里我使用PE来扩展。
要获取可用的物理扩展大小,运行以下命令。
# vgdisplay
检查可用的物理扩展
总共有4607空闲PE可用,亦即有18GB空间空间可用。因此,我们可以将我们的逻辑卷扩展到18GB这么大。让我们使用PE大小来扩展。
# lvextend -l +4607 /dev/vg_tecmint/LogVol01
使用+来添加更多空间。在扩展后,我们需要改变文件系统大小,使用以下命令。
# resize2fs /dev/vg_tecmint/LogVol01
扩展逻辑卷
用来使用物理扩展扩展逻辑卷的命令。这里我们可以看到它从16.51GB扩展到了34GB。如果文件系统已被挂载并处于使用中,改变文件系统大小。要扩展逻辑卷,我们不需要卸载文件系统
现在,让我们看看当前使用的改变大小后的逻辑卷。
# lvdisplay
改变逻辑卷大小
LogVol01用于扩展的卷 /。扩展后,从16.50GB上升到了34.50GB。C当前扩展,在扩展前有4226,我们已经添加了4607个扩展,因此现在有8833。
现在,如果我们检查可用的vg的话,空闲PE将会是0。
# vgdisplay
查看扩展的结果。
# pvs# vgs# lvs

验证分区大小改变
添加的新物理卷。卷组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

缩减逻辑卷
这里,我们可以看到文件系统信息。
# df -h
检查文件系统大小
卷大小是18GB。它已经使用了3.9GB。可用空间是13GB。
首先,卸载挂载点。
# umount -v /mnt/tecmint_reduce_test/

卸载分区
然后,使用以下命令来检查文件系统错误。
# e2fsck -ff /dev/vg_tecmint_extra/tecmint_reduce_test

扫描分区错误
注意:必须通过所有文件系统检查的5个步骤,若未完全通过,则你的文件系统可能存在问题。
接下来,缩减文件系统。
# resize2fs /dev/vg_tecmint_extra/tecmint_reduce_test 8GB

缩减文件系统
使用GB来缩减逻辑卷。
# lvreduce -L -8G /dev/vg_tecmint_extra/tecmint_reduce_test
缩减逻辑分区
要使用PE来缩减逻辑卷,我们需要知道默认PE大小和卷组的总PE大小,以进行一次小小的计算来得出准确的缩减大小。
# lvdisplay vg_tecmint_extra
这里,我们需要使用bc命令来做一些小计算来获得10GB的PE大小。
1024MB x 10GB = 10240MB or 10GB10240MB / 4PE = 2048PE
按CTRL+D来退出BC。
计算PE大小
使用PE来缩减大小。
# lvreduce -l -2048 /dev/vg_tecmint_extra/tecmint_reduce_test
使用PE来缩减大小
将文件系统大小调整回去。在这一步中,如果发生任何错误,这就意味着我们已经将文件系统搞乱了。
# resize2fs /dev/vg_tecmint_extra/tecmint_reduce_test
将文件系统挂载回同样的挂载点。
# mount /dev/vg_tecmint_extra/tecmint_reduce_test /mnt/tecmint_reduce_test/

挂载文件系统
检查分区和文件的大小。
# lvdisplay vg_tecmint_extra
这里,我们可以看到最后的结果,逻辑已经被缩减到10GB。
Linux扩增卷组、逻辑卷以及缩减逻辑卷的更多相关文章
- GNU/Linux下LVM配置管理以及快照卷、物理卷、卷组、逻辑卷的创建和删除
LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上.文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性.最大的优点是在不损伤数据的前提下调整存储空间的大小. 本篇主要讲述L ...
- linux磁盘 分区 物理卷 卷组 逻辑卷 文件系统加载点操作案例
转自:truemylife.linux磁盘 分区 物理卷 卷组 逻辑卷 文件系统加载点操作案例 基本概念: 磁盘.分区.物理卷[物理部分] 卷组[中间部分] 逻辑卷.文件系统[虚拟化后可控制部分] 磁 ...
- Linux 物理卷(PV)、逻辑卷(LV)、卷组(VG)管理
(一)相关概念 逻辑卷是使用逻辑卷组管理(Logic Volume Manager)创建出来的设备,如果要了解逻辑卷,那么首先需要了解逻辑卷管理中的一些概念. 物理卷(Physical Volume, ...
- Linux LVM卷组管理
Linux LVM卷组管理 由于传统的磁盘管理不能对磁盘进行磁盘管理,因此诞生了LVM技术,LVM技术最大的特点就是对磁盘进行动态管理. 由于LVM的逻辑卷的大小更改可以进行动态调整,且不会出现丢失数 ...
- Linux 系统 LVM(Logical Volume Manager)逻辑卷管理
一.前言 每个Linux使用者在安装Linux时都会遇到这样的困境:在为系统分区时,如何精确评估和分配各个硬盘分区的容量,因为系统管理员不但要考虑到 当前某个分区需要的容量,还要预见该分区以后可能需要 ...
- Linux LVM学习总结——创建卷组VG
在Linux平台如何创建一个卷组(VG)呢?下面简单介绍一下卷组(VG)的创建步骤.本文实验平台为Red Hat Enterprise Linux Server release 6.6 (Santia ...
- 烂泥:LVM学习之逻辑卷及卷组缩小空间
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 上一篇文章,我们学习了如何给LVM的逻辑卷及卷组扩容.这篇文章我们来学习,如何给LVM的逻辑卷及卷组缩小空间. 注意逻辑卷的缩小一定要离线操作,不能是在 ...
- 烂泥:LVM学习之逻辑卷LV及卷组扩容VG
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 上篇文章中介绍了有关LVM基础的知识,这篇文章我们来介绍如何给LVM的逻辑卷LV及卷组VG扩容. LVM的逻辑卷,我们知道它最后相当于一个分区,既然是一 ...
- 物理卷操作命令:pvcreate,pvscan,pvdisplay.卷组操作命令:vgcreate,vgdisplay.
新硬盘创建LVM系统过程. 物理卷操作命令:pvcreate,pvscan,pvdisplay. 卷组操作命令:vgcreate,vgdisplay. 逻辑卷操作命令:lvcreate,lvdispl ...
随机推荐
- (转)Inode详解
Inode详解 原文:http://www.cnblogs.com/adforce//p/3522433.html 一.inode是什么 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的 ...
- 牛客网Java刷题知识点之关键字static、static成员变量、static成员方法、static代码块和static内部类
不多说,直接上干货! 牛客网Java刷题知识点之关键字static static代表着什么 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个“伪全局”的概念,在Java中st ...
- CI框架自带的验证工具及汉化
本人自己还是很喜欢CI框架自带的验证工具的,使用方式如下: /** *@blog<http://www.phpddt.com> */ public function do_login() ...
- Android使用AchartEngine绘制曲线图
1.在布局文件中加入LinearLayout布局,如下: <LinearLayout android:id="@+id/chart" android:orientation= ...
- mongodb的创建删除数据库
1.创建数据库 use 命令 MongoDB use DATABASE_NAME 用于创建数据库.该命令将创建一个新的数据库,如果它不存在,否则将返回现有的数据库. 语法: use DATABASE ...
- js正则匹配获取文件名
//获取文件名,不带后缀 var file_name=file_path.replace(/(.*\/)*([^.]+).*/ig,"$2"); //获取文件后缀 1.var Fi ...
- apple-touch-icon-precomposed
<link rel="apple-touch-icon-precomposed" href=""> apple-touch-icon-precomp ...
- Yii2.0数据库缓存依赖发布的使用理解
对于产品中经常需要生成一些缓存类的东西,比如系统基础配置,商品分类等,每次修改调整后都要手动进行缓存发布,是不是非常麻烦!这时候Yii2.0的缓存依赖发布就起到至关重要的作用了!现将主要的使用流程介绍 ...
- Python各种参数类型
1. Python的参数传递是值传递还是引 举例说明Python函数参数传递的几种形式,并说明函数传参是值传递还是引用传递 一.位置参数 调用函数时根据函数定义的参数位置来传递参数.例子: def p ...
- 单列表变量与字符串拆分的对照(SqlServer)
最近遇到一个问题,在SQLServer中,需要根据用户传入的一系列ID值更新对应的记录.有两种方法,一种是将这些ID值使用逗号分隔,拼接成字符串传入,一种是以表变量的方式传入.最开始,我想当然的认为传 ...