系列

How to use LVM in Linux

How to Extend/Reduce LVM’s (Logical Volume Management) in Linux

How to Take ‘Snapshot of Logical Volume and Restore’ in LVM


概述 在Linux中扩展/缩减LVM

前面我们已经了解了怎样使用LVM创建弹性的磁盘存储。这里,我们将了解怎样来扩展卷组,扩展和缩减逻辑卷。在这里,我们可以缩减或者扩展逻辑卷管理(LVM)中的分区,LVM也可称之为弹性卷文件系统。


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

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


服务器设置

操作系统 – 安装有LVM的CentOS 6.5


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

扩展逻辑卷

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

# pvs
# vgs
# lvs

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

创建LVM分区

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

# fdisk -cu /dev/sda

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

验证LVM分区

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

# fdisk -l /dev/sda

创建新PV(物理卷)

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

# pvcreate /dev/sda1

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

# pvs


扩展卷组

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

# vgextend vg_tecmint /dev/sda1

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

# vgs

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

# pvscan

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

  1. LogVol00用于Swap。
  2. LogVol01用于/。
  3. 现在我们有16.50GB大小的空间用于/(root)。
  4. 当前有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

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

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

# lvdisplay

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

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

# vgdisplay

查看扩展的结果。

# pvs
# vgs
# lvs

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

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


缩减逻辑卷(LVM)

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

  • 在开始之前,备份好数据总是对的,这样如果出错,就不会头痛了。
  • 要缩减逻辑卷,需要小心翼翼地完成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来缩减大小。

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

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

# 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 - How to Extend/Reduce LVM’s (Logical Volume Management) in Linux相关推荐

  1. Logical Volume Manager in Linux ( Create, Displ...

    为什么80%的码农都做不了架构师?>>>    What is LVM? LVM is a tool for logical volume management which incl ...

  2. LVM(Logical Volume Manager)逻辑卷管理

    一:LVM简介 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管 ...

  3. 逻辑卷管理LVM(logical volume manager)

    LVM的全名是logical volume manager,中文翻译逻辑卷管理器.之所以称为卷是因为可以将文件系统像卷一样伸长和缩短,LVM的做法是将几个物理的分区(或磁盘)通过软件组合成为一块独立的 ...

  4. Linux - How to Take ‘Snapshot of Logical Volume and Restore’ in LVM

    系列 How to use LVM in Linux How to Extend/Reduce LVM's (Logical Volume Management) in Linux How to Ta ...

  5. linux lvm 8e下继续划分分区,linux下LVM学习_逻辑卷管理

    一.LVM介绍 LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,通过LVM可以在不停机的情况下调整分区大小,提高了磁盘分区 ...

  6. Linux学习-逻辑滚动条管理员 (Logical Volume Manager)

    LVM 可以整合多个实体 partition 在一起, 让这些 partitions 看起来就像是一个磁盘一样!而且,还可以在未来新增或移除其他的实 体 partition 到这个 LVM 管理的磁盘 ...

  7. Linux学习笔记38——磁盘配额 (Quota) 的应用与实作、软件磁盘阵列 (Software RAID)、逻辑卷轴管理员 (Logical Volume Manager)

    一.磁盘配额 (Quota) 的应用与实作 1,什么是 Quota Quota 的一般用途 [1] Quota 的使用限制 2,一个 XFS 文件系统的 Quota 实作范例 3 实作 Quota 流 ...

  8. 学习OpenStack之 (4): Linux 磁盘、分区、挂载、逻辑卷管理 (Logical Volume Manager)

    0. 背景: inux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间.普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻 ...

  9. 菜鸟学Linux 第026篇笔记 LVM

    菜鸟学Linux 第026篇笔记 LVM lsmod - program to show the status of modules in the Linux Kernel LVM 可以将物理硬盘组合 ...

最新文章

  1. 浅述WinForm多线程编程与Control.Invoke的应用
  2. 程序员需要谨记的九大安全编码规则
  3. Linux空硬盘从分区到挂载
  4. python计算数组元素的和_python中数组的运算
  5. 地理学中常见图的名称(或者分析)
  6. Linux GPIO键盘驱动开发记录_OMAPL138
  7. mysql和hdfs性能对比,Hadoop vs Spark性能对比 -数据库-火龙果软件工程
  8. 时间操作(JavaScript版)—页面显示格式:年月日星期几
  9. 动力学是如何做预测的
  10. 04748JAVA语言程序设计实践考试复习
  11. java汉字的编码_Java中文编码小结
  12. Intel IOMMU Introduction
  13. oa服务器日常维护,OA系统的日常维护工作有哪些
  14. 大小写金额转换html,小写金额转为大写金额JS代码怎么写呢?
  15. n1进入recovery模式_OPPO N1如何进入recovery模式
  16. 正则表达式数字匹配规则整理
  17. 假期娱乐和学习兼得型STEAM智能机器人有哪些?(2018-2019)
  18. nao机器人学习笔记5
  19. VUE中v-for循环
  20. 单片机光敏电阻c语言程序怎么写,求助 关于光敏电阻模块的单片机程序

热门文章

  1. kibana. 登陆
  2. 计算机操作系统32跟64区别是什么,32位和64位计算机操作系统之间的区别32位和64位win7系统之间的区别...
  3. unity3d游戏开发第2版 pdf_学开发2个月,1个人做出个TapTap排行榜第4的游戏?
  4. 动态规划-背包问题小结
  5. 深度学习在CTR预估的应用
  6. 文巾解题 372. 超级次方
  7. tableau实战系列(一)-轻松升级你的 Tableau Server
  8. js title 单选框 获取_js简单获取表单中单选按钮值的方法
  9. python能解密java的_实现Java加密,Python解密的RSA非对称加密算法功能
  10. 服务的实例已在运行中_亚马逊首次把macOS引入云服务