LVM逻辑卷的详细介绍
=LVM逻辑卷的详细介绍==
LVM(Logical Volume Manager,逻辑卷管理器)是一种在 Linux 系统中用于灵活管理磁盘存储的机制。它允许管理员在不重新分区磁盘或中断系统运行的情况下,轻松地调整文件系统的大小,以及进行其他存储管理操作。
一、LVM 的主要组成部分:
- 物理卷(Physical Volume,PV):
- 物理卷是 LVM 的基本存储单元,可以是一个磁盘分区,也可以是整个磁盘。
- 在将磁盘或分区初始化为物理卷时,会在其上写入特定的 LVM 元数据,用于标识该存储单元属于 LVM 管理体系。
- 例如,使用命令
pvcreate /dev/sdb1
可以将 /dev/sdb1 分区初始化为物理卷。
- 卷组(Volume Group,VG):
- 卷组是由一个或多个物理卷组成的存储池。
- 卷组将多个物理卷的存储空间整合在一起,为逻辑卷的创建提供可用的存储资源。
- 例如,可以使用命令
vgcreate myvg /dev/sdb1 /dev/sdc1
创建一个名为 “myvg” 的卷组,包含 /dev/sdb1 和 /dev/sdc1 两个物理卷。
- 逻辑卷(Logical Volume,LV):
- 逻辑卷是从卷组中划分出来的虚拟存储设备,可以像常规磁盘分区一样进行格式化和挂载使用。
- 管理员可以根据实际需求,从卷组中分配不同大小的空间创建逻辑卷。
- 例如,使用命令
lvcreate -L 10G -n mylv myvg
可以在名为 “myvg” 的卷组中创建一个大小为 10GB 的逻辑卷 “mylv”。
lvextend -L +5G /dev/myvg/mylv
# 将逻辑卷 “mylv” 的大小增加 5GB。
二、LVM 的使用步骤:
- 准备物理存储设备:
- 确定要用于 LVM 的磁盘或分区。可以使用未分区的磁盘空间,也可以将现有分区转换为物理卷(但这可能会导致数据丢失,需谨慎操作)。
- 创建物理卷:
- 使用
pvcreate
命令将磁盘或分区初始化为物理卷。例如,pvcreate /dev/sdb
将 /dev/sdb 磁盘初始化为物理卷。
- 使用
- 创建卷组:
- 使用
vgcreate
命令创建卷组,并将一个或多个物理卷添加到卷组中。例如,vgcreate myvg /dev/sdb /dev/sdc
创建一个名为 “myvg” 的卷组,包含 /dev/sdb 和 /dev/sdc 两个物理卷。
- 使用
- 创建逻辑卷:
- 使用
lvcreate
命令从卷组中分配空间创建逻辑卷。可以指定逻辑卷的大小、名称等参数。例如,lvcreate -L 20G -n mylv myvg
在 “myvg” 卷组中创建一个大小为 20GB 的逻辑卷 “mylv”。
- 使用
- 格式化和挂载逻辑卷:
- 像对待常规磁盘分区一样,对逻辑卷进行格式化。例如,使用
mkfs.ext4 /dev/myvg/mylv
将逻辑卷格式化为 ext4 文件系统。 - 然后使用
mount
命令将逻辑卷挂载到文件系统中。例如,mount /dev/myvg/mylv /mnt/mydata
将逻辑卷挂载到 /mnt/mydata 目录下。
- 像对待常规磁盘分区一样,对逻辑卷进行格式化。例如,使用
操作顺序:
-
物理磁盘
-
命令创建 pv
-
创建卷组 vg
-
创建逻辑卷 LV
-
格式化 v 文件系统
-
挂载使用
-
物理分区阶段: 将物理磁盘 fdisk 格式化修改 System ID 为 LVM 标记 (8e)
-
PV 阶段: 通过 pvcreate、pvdisplay 将 Linux 分区处理为物理卷 PV
-
VG 阶段: 接下来通过 vgcreate、vgdisplay 将创建好的物理卷 PV 处理为卷组 VG
-
LV 阶段: 通过 Lvcreate 将卷组分成若干个逻辑卷 LV
-
开始使用: 通过 mkfs 对 LV 格式化: 最后挂载 LV 使用
物理分区 | /dev/sdb | /dev/sdc | fdisk 命令 |
---|---|---|---|
创建 pv | PV /dev/sdb | PV /dev/sdc | pvcreate pvdisplay |
创建VG | VG中有多个PE | vgcreate vgdisplay | |
创建LV | LV可以用来格式化 | lvcreate lvdisplay | |
开始使用 | 格式化文件系统 | fdisk mount |
LVM常用命令汇总
操作 | pv 命令 | vg 命令 | lv 命令 |
列出 display | pvs | vgs | lvs |
扩容 extend | vgextend | Ivextend | |
缩容 reduct | vgreduce | Lvreduce | |
删除 remove | pvremove | vgremove | lvremove |
改变容量 resize | vgresize |
物理卷(pv)管理的命令
命令 | 功能 |
---|---|
pvcreate | 创建物理卷 |
pvscan | 查看物理卷信息 |
pvdisplay | 查看各个物理卷的详细参数 |
pvremove | 删除物理卷 |
==lvcreate
==是用于创建逻辑卷的命令,常用参数如下:
-
-L
或--size
:指定逻辑卷的大小。例如:-L 10G
表示创建一个大小为 10GB 的逻辑卷。 -
-n
或--name
:指定逻辑卷的名称。例如:-n mylv
表示创建一个名为mylv
的逻辑卷。
[root@localhost ~]# lvcreate -n lv99 -L 4G vg-99
# vg-99是卷组名
创建 | 查看卷信息 | 查看详细参数 | 删除卷 | |
---|---|---|---|---|
物理卷 | pvcreate | pvs | pvdisplay | pvremove |
卷组 | vgcreate | vgs | vgdisplay | vgremove |
逻辑卷 | lvcreate | lvs | lvdisplay | lvremove |
创建顺序从上往下,删除从下往上删
[root@localhost ~]# pvcreate /dev/sdb /dev/sdc[root@localhost ~]# vgcreate vg-99 /dev/sdb /dev/sdc[root@localhost ~]# lvcreate -n lv99 -L 4G vg-99[root@localhost ~]# lvremove /dev/vg-99/lv99
# 删除先从逻辑卷开始删,如果记不得路径,就display查一下[root@localhost ~]# lvdisplay --- Logical volume ---LV Path /dev/vg-99/lv99