LVM(Logical Volume Manager),逻辑卷管理
LVM的作用是在不影响数据的情况下对filesystem的空间大小进行扩充以及减缩。方法是将几个实体的partitions通过软件组合成为一个在逻辑上独立的大磁盘,再对该逻辑磁盘进行分区得到可使用的分区槽,最终挂载使用
实现的流程如下:
- Physical Storage Media(物理存储介质):
物理存储设备,如磁盘,存储系统最底层的存储单元
- Physical Volume, PV(物理卷):
利用软件对物理存储设备进行组合,指磁盘分区或从逻辑上与磁盘分区具有相同功能的设备,是LVM的基本存储逻辑块,包含LVM相关的管理参数
- Volume Group(卷组):
类似于系统中的物理磁盘/dev/sda,由一个或者多个PV组成
- Logical Volume(逻辑卷):
类似磁盘分区,其建立在VG上
- Physical Extent, PE(物理块):
每一个PV被划分为PE的基本单元,相当于block,是LVM存储的最小单元,可以说PV是由基本单元PE组成
Logical Extent, LE(逻辑块):LV划分的可被寻址的基本单元,在同一卷组中,LE的大小和PE是相同的,并且一一对应
LVM可弹性的变更filesystem容量实现原理:
当一个LV在不影响文件系统中数据的情况下进行扩充时,LV会将VG中空想的PE添加进去以此来扩充容量;当然LV进行缩减的时候,将LV中空闲的PE去除
LVM实现过程:
- PV
pvcreate
# pvcreate /dev/sda{5,6} 创建物理卷
pvs
# pvs [/dev/sda#]: 显示指定物理卷信息或者所有物理卷信息
pvremove
# pvremove /dev/sda# 移除指定物理卷
pvmove
# pvmove /dev/sda# 将指定物理卷中的数据移到其他物理卷上
pvscan
# pvscan 扫描识别系统中PV
pvdisplay
# pvdisplay [/dev/sda#] 详细显示指定物理卷的信息或者所有物理卷的信息
- VG
vgcreate
# vgcreate VG_NAME /dev/sda# 将指定物理卷创建成VG_NAME的卷组
-s #: 指定PE的大小
vgs
# vgs [VG_NAME]: 查看指定卷组信息或者所有卷组的信息
vgremove
# vgremove VG_NAME: 移除指定卷组
vgreduce
# vgreduce VG_NAME PhysicalDevicePath: 将指定物理卷从指定卷组中移除
注:使用该命令的时候,必须先执行pvmove命令,以此来保护数据
vgextend
# vgextend VG_NAME PhysicalDevicePath: 将指定物理卷添加到指定卷组中
vgdisplay
# vgdisplay [VG_NAME]: 显示指定卷组信息或者所有的卷组信息
- LV
lvcreate
# lvcreate -L #G -n LV_NAME VG_NAME: 在VG_NAME下创建#G大小的LV_NAME
lvs
# lvs [VG_NAME]: 显示指定卷组中的逻辑卷信息或者所有逻辑卷信息
lvremove
# lvremove LogicalVolumePath: 移除指定逻辑卷组(逻辑卷组位于/dev/VG_NAME/LV_NAME)
lvextend
# lvextend (扩展逻辑卷的大小)
-L [+]# /PATH/TO/LV
-L +3G: 扩展了3G
-L 5G: 扩展到5G
lvreduce
# lvreduce (缩减逻辑卷的大小)
-L [-]# /PATH/TO/LV
-L -3G: 缩减了3G
-L 5G: 缩减到5G
lvdisplay
# lvdisplay [VG_NAME]: 显示指定卷组中的逻辑卷详细信息或者所有逻辑卷详细信息
- Using
创建文件系统,挂载使用LV
练习:
创建一个由两个物理卷组成的大小为20G的卷组myvg,要求其PE大小为16M;然后在此卷组上创建一个大小为5G的逻辑卷lv1,此逻辑卷能在开机后自动挂载至/users目录,且支持ACL功能;
LV逻辑卷的扩展、缩减以及快照的实现
- 扩展逻辑卷
(1)扩张物理边界
# lvextend
-L [+]# /PATH/TO/LV
-L +3G: 扩展了3G
-L 5G: 扩展到5G
(2)扩展逻辑边界(文件系统的大小)
# resize2fs
resize2fs /PATH/TO/LV 5G 扩展到5G
-p: 能有多大扩展到多大
- 缩减逻辑卷
注意:
不能在线缩减,得先卸载设备
确保缩减后的空间大小依然能存储原有的所有数据
在缩减之前应该先强行检查文件,以确保文件系统处于一致性状态
(1)卸载、检查文件系统
# df -lh
# umount
# e2fsck -f
(2)缩减逻辑边界
# resize2fs
resize2fs /PATH/TO/LV 5G 扩展到5G
-p:
(3)缩减物理边界
# lvreduce
-L [-]# /PATH/TO/LV
-L -3G: 缩减了3G
-L 5G: 缩减到5G
- 快照卷
注意:
生命周期为整个数据时长;在这段时长内,数据的增长量不能超出快照卷大小
快照卷应该是只读的
跟原卷在同以卷组内
# lvcreate
-s: 表示创建快照卷
-p: r|w: 指定快照卷的权限,一般指定为读权限
# lvcreate -L # -n SLV_NAME -s -p r /PATH/TO/LV
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。