广杰博客

  • 首页
  • IT资讯
  • IT运维
  1. 首页
  2. IT运维
  3. 正文

Linux LVM使用

06/23/2014 1415点热度 0人点赞 0条评论

逻辑卷管理LVM是一个多才多艺的硬盘系统工具。无论在Linux或者其他类似的系统,都是非常的好用。传统分区使用固定大小分区,重新调整大小十分麻烦。但是,LVM可以创建和管理“逻辑”卷,而不是直接使用物理硬盘。可以让管理员弹性的管理逻辑卷的扩大缩小,操作简单,而不损坏已存储的数据。可以随意将新的硬盘添加到LVM,以直接扩展已经存在的逻辑卷。LVM并不需要重启就可以让内核知道分区的存在。

准备磁盘分区

通过使用fdisk,创建磁盘分区。我们需要创建3个1G分区,注意,并不要求分区的大小一致。同样,分区需要使用‘8e’类型来使他们可用于LVM。

  1. # fdisk /dev/sdb

  1. Command (m for help): n ## 新建
  2. Command action
  3. e extended
  4. p primary partition (1-4)
  5. p ## 主分区
  6. Partition number (1-4): 1 ## 分区号
  7. First cylinder (1-1044, default 1): ## 回车用默认的1
  8. Last cylinder, +cylinders or +size{K,M,G} (1-1044, default 1044): +1G ## 大小
  9. Command (m for help): t ## 改变类型
  10. Selected partition 1
  11. Hex code (type L to list codes): 8e ## LVM 的分区代码
  12. Changed system type of partition 1 to 8e (Linux LVM)

重复上面的操作来创建其他两个分区。分区创建完成后,我们应该有类似如下的输出:

  1. # fdisk -l

  1. Device Boot Start End Blocks Id System
  2. /dev/sdb1 1 132 1060258+ 8e Linux LVM
  3. /dev/sdb2 133 264 1060290 8e Linux LVM
  4. /dev/sdb3 265 396 1060290 8e Linux LVM

准备物理卷(PV)

刚创建的分区是用来储存物理卷的。LVM可以使用不同大小的物理卷。

  1. # pvcreate /dev/sdb1
  2. # pvcreate /dev/sdb2
  3. # pvcreate /dev/sdb3

使用下列命令检查物理卷的创建情况。下面截取部分输出。"/dev/sdb2"是一个新的"1.01 GiB"物理卷。

  1. # pvdisplay

  1. --- NEW Physical volume ---
  2. PV Name /dev/sdb2
  3. VG Name
  4. PV Size 1.01 GiB
  5. Allocatable NO
  6. PE Size 0
  7. Total PE 0
  8. Free PE 0
  9. Allocated PE 0
  10. PV UUID jszvzz-ENA2-g5Pd-irhV-T9wi-ZfA3-0xo092

使用下列命令可以删除物理卷。

  1. # pvremove /dev/sdb1

准备卷组(VG)

下列命令用来创建名为'volume-group1'的卷组,使用/dev/sdb1, /dev/sdb2 和 /dev/sdb3创建。

  1. # vgcreate volume-group1 /dev/sdb1 /dev/sdb2 /dev/sdb3

使用下列命令可以来验证卷组。

  1. # vgdisplay

  1. --- Volume group ---
  2. VG Name volume-group1
  3. System ID
  4. Format lvm2
  5. Metadata Areas 3
  6. Metadata Sequence No 1
  7. VG Access read/write
  8. VG Status resizable
  9. MAX LV 0
  10. Cur LV 0
  11. Open LV 0
  12. Max PV 0
  13. Cur PV 3
  14. Act PV 3
  15. VG Size 3.02 GiB
  16. PE Size 4.00 MiB
  17. Total PE 774
  18. Alloc PE / Size 0 / 0
  19. Free PE / Size 774 / 3.02 GiB
  20. VG UUID bwd2pS-fkAz-lGVZ-qc7C-TaKv-fFUC-IzGNBK

从输出中,我们可以看见卷组的使用量/总量。物理卷给卷组提供空间。只要在这个卷组中还有可用空间,我们就可以随意创建逻辑卷。

使用下列命令删除卷组。

  1. # vgremove volume-group1

创建逻辑卷(LV)

下列命令创建一个名为'1v1'、大小为100MB的逻辑卷。我们使用小分区减少执行时间。这个逻辑卷使用之前创建的卷组的空间。

  1. # lvcreate -L 100M -n lv1 volume-group1

逻辑卷可使用lvdisplay命令查看。

  1. # lvdisplay

  1. --- Logical volume ---
  2. LV Name /dev/volume-group1/lv1
  3. VG Name volume-group1
  4. LV UUID YNQ1aa-QVt1-hEj6-ArJX-I1Q4-y1h1-OFEtlW
  5. LV Write Access read/write
  6. LV Status available
  7. # open 0
  8. LV Size 100.00 MiB
  9. Current LE 25
  10. Segments 1
  11. Allocation inherit
  12. Read ahead sectors auto
  13. - currently set to 256
  14. Block device 253:2

现在逻辑卷已经准备好了,我们可以格式化和挂载逻辑卷,就像其它ext2/3/4分区一样!

  1. # mkfs.ext4 /dev/volume-group1/lv1
  2. # mkdir /lvm-mount
  3. # mount /dev/volume-group1/lv1 /lvm-mount/

一旦逻辑卷挂载,我们就可以到挂载点 /lvm-mount/ 上读写了。要创建和挂载其它的逻辑卷,我们重复这个过程。

最后,使用lvremove我们可以删除逻辑卷。

  1. # umount /lvm-mount/
  2. # lvremove /dev/volume-group1/lv1

扩展一个LVM卷

调整逻辑卷大小的功能是LVM最有用的功能。这个部分会讨论我们怎么样扩展一个存在的逻辑卷。下面,我们将会扩展先前创建的逻辑卷‘lv1’扩大到200MB。

注意,调整逻辑卷大小之后,也需要对文件系统调整大小进行匹配。这个额外的步骤各不相同,取决于创建文件系统的类型。在本文中,我们使用'lv1'创建了ext4类型的文件系统,所以这里的操作是针对ext4文件系统的。(ext2/3文件系统也类同)。命令的执行顺序是很重要的。

首先,我们卸载掉lv1卷

  1. # umount /lvm-mount/

然后,设置卷的大小为200M

  1. # lvresize -L 200M /dev/volume-group1/lv1

接下来,检查磁盘错误

  1. # e2fsck -f /dev/volume-group1/lv1

运行以下命令扩展文件系统以后,ext4信息就更新了。

  1. # resize2fs /dev/volume-group1/lv1

现在,这个逻辑卷应该已经扩展到200MB了。我们检查LV的状态来验证。

  1. # lvdisplay

  1. --- Logical volume ---
  2. LV Name /dev/volume-group1/lv1
  3. VG Name volume-group1
  4. LV UUID 9RtmMY-0RIZ-Dq40-ySjU-vmrj-f1es-7rXBwa
  5. LV Write Access read/write
  6. LV Status available
  7. # open 0
  8. LV Size 200.00 MiB
  9. Current LE 50
  10. Segments 1
  11. Allocation inherit
  12. Read ahead sectors auto
  13. - currently set to 256
  14. Block device 253:2

现在,这个逻辑卷可以再次挂载,同样这个方法也可用于其他分区。

缩减一个LVM卷

这章节介绍缩减LVM卷大小的方法。命令的顺序同样重要。并且,下列命令对ext2/3/4文件系统同样有效。

注意减少逻辑卷的大小值若小于储存的数据大小,存储在后面的数据会丢失。

首先,卸载掉卷。

  1. # umount /dev/volume-group1/lv1

然后,检测磁盘错误。

  1. # e2fsck -f /dev/volume-group1/lv1

接下来缩小文件系统,更新ext4信息。

  1. # resize2fs /dev/volume-group1/lv1 100M

完成以后,减少逻辑卷大小

  1. # lvresize -L 100M /dev/volume-group1/lv1

WARNING: Reducing active logical volume to 100.00 MiB THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce lv1? [y/n]: y Reducing logical volume lv1 to 100.00 MiB Logical volume lv1 successfully resized

最后,验证调整后的逻辑卷大小。

  1. # lvdisplay

  1. --- Logical volume ---
  2. LV Name /dev/volume-group1/lv1
  3. VG Name volume-group1
  4. LV UUID 9RtmMY-0RIZ-Dq40-ySjU-vmrj-f1es-7rXBwa
  5. LV Write Access read/write
  6. LV Status available
  7. # open 0
  8. LV Size 100.00 MiB
  9. Current LE 25
  10. Segments 1
  11. Allocation inherit
  12. Read ahead sectors auto
  13. - currently set to 256
  14. Block device 253:2

扩展一个卷组

本节将讨论扩展卷组的方法,将一个物理卷添加到卷组。让我们假设我们的卷组'volume-group1'已经满了,需要扩大。手上的硬盘(sdb)已经没有其他空闲分区,我们添加了另外一个硬盘(sdc)。我们将看到如何把sdc的分区添加到卷组以扩展。

检测现在卷组状态

  1. # vgdisplay volume-group1

  1. --- Volume group ---
  2. VG Name volume-group1
  3. System ID
  4. Format lvm2
  5. Metadata Areas 3
  6. Metadata Sequence No 8
  7. VG Access read/write
  8. VG Status resizable
  9. MAX LV 0
  10. Cur LV 1
  11. Open LV 0
  12. Max PV 0
  13. Cur PV 3
  14. Act PV 3
  15. VG Size 3.02 GiB
  16. PE Size 4.00 MiB
  17. Total PE 774
  18. Alloc PE / Size 25 / 100.00 MiB
  19. Free PE / Size 749 / 2.93 GiB
  20. VG UUID bwd2pS-fkAz-lGVZ-qc7C-TaKv-fFUC-IzGNBK

首先,我们创建一个2GB分区sdc1,类型为LVM(8e),如教程前所述。

  1. # fdisk /dev/sdc

  1. Command (m for help): n
  2. Command action
  3. e extended
  4. p primary partition (1-4)
  5. p
  6. Partition number (1-4): 1
  7. First cylinder (1-1044, default 1):
  8. Using default value 1
  9. Last cylinder, +cylinders or +size{K,M,G} (1-1044, default 1044): +2G
  10. Command (m for help): t
  11. Selected partition 1
  12. Hex code (type L to list codes): 8e
  13. Changed system type of partition 1 to 8e (Linux LVM)
  14. Command (m for help): w
  15. The partition table has been altered!

然后,我们创建一个物理卷 /dev/sdc1

  1. # pvcreate /dev/sdc1

现在,物理卷已经准备好了,我们可以简单地将它增加到已存在的卷组'volume-group1'上。

  1. # vgextend volume-group1 /dev/sdc1

使用vgdisplay来验证(可以看到卷组大小已经增大)。

  1. # vgdisplay

  1. --- Volume group ---
  2. VG Name volume-group1
  3. System ID
  4. Format lvm2
  5. Metadata Areas 4
  6. Metadata Sequence No 9
  7. VG Access read/write
  8. VG Status resizable
  9. MAX LV 0
  10. Cur LV 1
  11. Open LV 0
  12. Max PV 0
  13. Cur PV 4
  14. Act PV 4
  15. VG Size 5.03 GiB
  16. PE Size 4.00 MiB
  17. Total PE 1287
  18. Alloc PE / Size 25 / 100.00 MiB
  19. Free PE / Size 1262 / 4.93 GiB
  20. VG UUID bwd2pS-fkAz-lGVZ-qc7C-TaKv-fFUC-IzGNBK

注意,尽管我们使用一个单独的磁盘做示范,其实只要是‘8e’类型的磁盘分区都可以用来扩展卷组。

标签: LVM
最后更新:06/23/2014

guangjie

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >
最新 热点 随机
最新 热点 随机
Red Hat Enterprise Linux 9 发布,大量组件升级 windows10 家庭版添加hyper-v虚拟机组件 Red Hat Enterprise Linux 8.5 GA 发布 Rocky Linux 8.4 GA正式版发布下载 Rocky Linux 8.3 首个候选版本发布 CentOS 8.3 (2011) ISO镜像下载发布 CentOS Linux 落幕 CentOS Stream 上位 CentOS Linux 7.9 (2009) iso镜像下载 Windows 10 2020年10月更新ISO下载 ubuntu ssh通过密钥登陆服务器
快速升级MySQL系统表 一些常用的linux系统命令 Windows 7 Beta 1 可以下载了 微软公布Windows8价格,开始接受预定 linux 常用命令及技巧 linux下查看硬件信息的命令 Fedora 31 稳定版发布 Centos6.4 发布 IE7简体中文win03sp1/sp2 nagios 安装
标签聚合
springboot nginx Hyper-V Windows Server 2012 android linux redhat php_curl
友情链接
  • linux运维
  • 郑州SEO

COPYRIGHT © 2021 gjie.cn. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

豫ICP备07002435号-8