物理体积 (PV)

每个物理卷可以是磁盘分区、整个磁盘、元设备或者环回文件。
使用命令 pvcreate 初始化存储以供 LVM 使用。
将块设备初始化为物理卷会在设备的开头放置一个标签。

创建逻辑卷

现在可以使用 lvcreate 命令在 VG 中创建逻辑卷。

如果我们未在命令中指定 LV 名称,则默认情况下会为 LV 指定名称 lvol# 。

通常,如果我们不指定跨越 LV 的 PV,逻辑卷将在下一个空闲的基础上在 PV 上创建。

要创建大小为 5 GB 的逻辑卷 lvol01:

# lvcreate -L 5G -n lvol01 vg01
  Logical volume "lvol01" created

创建条带卷

要创建跨越我们创建的所有 3 个 PV 的条带卷:

# lvcreate -L 5G -I 4096 -i 3 -n lvol01 vg01
  Rounding size (1280 extents) up to stripe boundary size (1281 extents)
  Logical volume "lvol01" created
I - PVs to span while creating striped volume
i - stripe unit

创建镜像卷

要创建跨越 3 个 PV(sdb、sdc、sdd)的 3 路镜像卷:

# lvcreate -L 1G -m 2 -n lvol01 vg01
  Logical volume "lvol01" created

我们还可以指定在创建镜像 LV 时要使用的设备。
在我们的例子中,由于 VG 中只有 3 个 PV,默认情况下会在这 3 个 PV 上创建 LV。

显示LV信息

命令 lvdisplay 、 lvs 和 lvscan 可用于显示有关我们刚刚创建的 LV 的信息。

# lvs /dev/vg01/lvol01
  LV     VG   Attr      LSize Pool Oroirn Data%  Move Log         Cpy%Sync Convert
  lvol01 vg01 mwi-a-m-- 1.00g                         lvol01_mlog   100.00
# lvdisplay /dev/vg01/lvol01
  --- Logical volume --
  LV Path                /dev/vg01/lvol01
  LV Name                lvol01
  VG Name                vg01
  LV UUID                ptlmAV-mO42-fWiJ-e2Ml-r9kj-PFcC-MOexxw
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2014-10-22 09:04:25 -0700
  LV Status              available
  # open                 0
  LV Size                1.00 GiB
  Current LE             256
  Mirrored volumes       3
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:4
# lvscan
  ACTIVE            '/dev/vg01/lvol01' [1.00 GiB] inherit

管理 LVM 的图形工具

如果我们想使用,有一个很酷的图形工具(system-config-lvm)可用。
如果系统上尚未安装,请使用 yum 安装:

# yum install system-config-lvm

要启动图形 LVM 管理工具,请执行以下命令:

# system-config-lvm

卷组 (VG)

卷组将一组逻辑卷和物理卷聚集到一个管理单元中。
卷组被分成固定大小的物理盘区。
命令 vgcreate 使用先前通过 pvcreate 为 LVM 配置的块特殊设备物理卷路径创建新卷组。

VG 由 PV 组成,而 PV 又由物理盘区 (PE) 组成。
PE 的大小在不同的 VG 中可以不同,并在创建 VG 时定义。

PE 的默认大小为 4MB,但我们可以在创建 VG 时将其更改为我们想要的值。

通常,PE 大小越大,性能越好(尽管 LV 的粒度控制较少)。

创建卷组

使用 vgcreate 命令使用我们刚刚创建的 3 个 PV 创建新的卷组 vg01.
我们可以使用 -s 选项指定范围,并分别使用选项 -p 和 -l 来指定 VG 中 PV 和 LV 的最大数量。
所有这些选项都是可选的,不一定要使用。

# vgcreate vg01 /dev/sdb /dev/sdc /dev/sdd
  Volume group "vg01" successfully created

与 vgcreate 命令一起使用的可选选项是:

OptionMeaning
-sPhysical extent size
-pMax number of PVs
-lMax number of LVs
-allocallocation policy (either contiguous, anywhere, or cling)

显示 VG 信息

命令 vgs 和 vgdisplay 可用于显示有关我们刚刚创建的 VG 的信息:

# vgs vg01
  VG   #PV #LV #SN Attr   VSize VFree
  vg01   3   0   0 wz--n- 5.99g 5.99g
# vgdisplay vg01
  --- Volume group --
  VG Name               vg01
  System ID
  Format                lvm2
  Metadata Areas        3
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                3
  Act PV                3
  VG Size               5.99 GiB
  PE Size               4.00 MiB
  Total PE              1533
  Alloc PE / Size       0 / 0
  Free  PE / Size       1533 / 5.99 GiB
  VG UUID               Cw7GGz-NH3o-Sax2-5jPv-buZS-938T-tmNKFa

激活和停用 VG

vgchange 命令可用于激活/停用卷组。

要停用 VG:

# vgchange -a n vg01
  0 logical volume(s) in volume group "vg01" now active

激活 VG :

# vgchange -a y vg01
  1 logical volume(s) in volume group "vg01" now active

文件系统

文件系统建立在逻辑卷之上。
命令 mkfs 可用于在逻辑卷之上创建文件系统。
创建文件系统后,我们可以根据需要挂载逻辑卷。

让我们开始吧

这个例子
在下面的示例中,我们将:

  1. 从 3 个物理磁盘(/dev/sdb、/dev/sdc、/dev/sdd)创建 3 个物理卷。

  2. 从这 3 个 PV (/dev/vg01) 创建卷组。

  3. 在这个 VG (/dev/vg01/lvol01) 中创建一个 Lgical Volume。

  4. 在这个 LV 上创建一个文件系统并挂载它(/data01)。

Linux LVM(逻辑卷管理)教程

什么是 LVM

逻辑卷管理器 (LVM) 在物理磁盘和文件系统之间引入了一个另外的层,允许文件系统:
无需系统范围的中断即可轻松在线调整大小和移动。

使用磁盘上的不连续空间
有意义的名称到卷,而不是通常的神秘设备名称。

跨越多个物理磁盘

Linux LVM 与 HP-UX LVM 非常相似,并提供许多其他高级功能,如快照、集群支持(GFS2. OCFS 和 Lustre)。

概念

LVM 由几个概念层组成,例如物理卷、逻辑卷和文件系统。

概念层依次由更小的单位组成,如物理范围(在物理卷的情况下)和逻辑范围(在逻辑卷的情况下)。

创建文件系统

最后一步是在我们刚刚创建的新 LV 上创建一个文件系统,并将其挂载到一个目录中,以便能够访问它并其中存储数据。
命令 mkfs 可用于在 LV 之上创建文件系统。

# mkfs.ext4 /dev/vg01/lvol01
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
	32768, 98304, 163840, 229376
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 37 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

一旦创建了文件系统,就可以挂载逻辑卷。
确保在 /etc/fstab 中添加一个条目,以便在系统启动时自动挂载。

# mkdir /data01
# mount /dev/vg01/lvol01 /data01
# vi /etc/fstab
/dev/vg01/lvol01	/data01			ext4	defaults	0 0
# df -h /data01
Filesystem                   Size  Used  Avail  Use%  Mounted on
/dev/mapper/vg01-lvol01     1008M   34M  924M   4%    /data01
www. On IT Road .com

创建物理卷

pvcreate 命令用于初始化 PV 以供 LVM 使用。
在创建 PV 之前,请确保该磁盘在操作系统中可见。
要扫描用作 PV 的块设备,请使用 lvmdiskscan 命令。

# lvmdiskscan
.......
  /dev/sdb   [       2.00 GiB]
  /dev/sdc   [       2.00 GiB]
  /dev/sdd   [       2.00 GiB]
  3 disks
  19 partitions
  0 LVM physical volume whole disks
  0 LVM physical volumes

初始化块设备:

# pvcreate /dev/sdb /dev/sdc /dev/sdd
  Physical volume "/dev/sdb" successfully created
  Physical volume "/dev/sdc" successfully created
  Physical volume "/dev/sdd" successfully created

显示物理卷

使用命令 pvdisplay 、 pvs 和 pvscan 来显示我们刚刚创建的 PV。

# pvdisplay
  "/dev/sdb" is a new physical volume of "2.00 GiB"
  --- NEW Physical volume --
  PV Name               /dev/sdb
  VG Name
  PV Size               2.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               Mt3F7z-a2AV-28Vn-uXe2-QejE-Z6tP-UMlQGM
  "/dev/sdc" is a new physical volume of "2.00 GiB"
  --- NEW Physical volume --
  PV Name               /dev/sdc
  VG Name
  PV Size               2.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               5m1Fuc-yTRn-I2vG-bMfU-6SE7-53EA-s8VQjt
  "/dev/sdd" is a new physical volume of "2.00 GiB"
  --- NEW Physical volume --
  PV Name               /dev/sdd
  VG Name
  PV Size               2.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               1x3e2A-C0Lt-DrUA-tPSM-lsMu-sn70-qg1j8p
# pvscan
  PV /dev/sdb                      lvm2 [2.00 GiB]
  PV /dev/sdc                      lvm2 [2.00 GiB]
  PV /dev/sdd                      lvm2 [2.00 GiB]
  Total: 3 [6.00 GiB] / in use: 0 [0   ] / in no VG: 3 [6.00 GiB]
# pvs
  PV         VG   Fmt  Attr PSize PFree
  /dev/sdb        lvm2 a--  2.00g 2.00g
  /dev/sdc        lvm2 a--  2.00g 2.00g
  /dev/sdd        lvm2 a--  2.00g 2.00g

逻辑卷 (LV)

逻辑卷在概念上等同于非 LVM 系统中的磁盘分区。
逻辑卷是从同一卷组中存在的物理盘区创建的块设备。
我们可以使用命令 lvcreate 在现有卷组中创建逻辑卷。

日期:2020-09-17 00:14:33 来源:oir作者:oir