linux高级文件系统管理之逻辑卷管理(LVM)
一、什么是LVM
LVM:(Logical Volume Manager)逻辑卷管理器。LVM就是将几个物理的的分区 或磁盘,通过软件组合成为一块看起来是独立的大磁盘(VG),然后将这块大磁 盘再分为可使用的分区(LV:逻辑卷),这些分区(LV)可以扩大或缩小,从而 弹性的调整文件系统的容量。
二、PV、PE、VG、LV
PV:(Physical Volume)物理卷。LVM最底层的就是物理卷,分区需要调整系统 标识符成为8e(LVM的标识符),然后再经过命令pvcreate 转换为PV,之后这 些PV才能够被使用。
VG:(Volume Group)卷组。将多个PV组合到一起就组成了VG。
PE:(Physical Extents)盘区(物理扩展块)。LVM默认使用大小为4MB的 PE 块,PE的个数大小直接决定LV的大小,PE是LV的最小存储单位。
LV:(Logical Volume)逻辑卷。最终的VG会被切成LV,LV就是最后格式化后可 以被使用的分区。
三、逻辑卷创建流程
注:磁盘分区在此不做详细描述。
1.创建PV:磁盘分区后将系统标识符调整8e(LVM的标识符),创建查看PV。
命令:pvcreate
语法:pvcreate 设备文件
pvdisplay :查看pv信息
pvs:查看pv简要信息
2.创建VG:将多个pv整合成VG
命令:vgcreate
语法:vgcreate VG名 [-s PE大小(默认4MB)] pv1 pv2 …
vgdisplay:查看vg信息
vgs:查看vg简要信息
实例:创建myvg指定PE大小为8MB
3.创建LV:将VG分区
命令:lvcreate
语法:lvcreate -L LV_SIZE -n LV_NAME VG_NAME
Options: -l 指定PE个数
lvdisplay:显示LV信息
lvs:显示lv简要信息
4.逻辑卷设备文件
/dev/VG_NAME/LV_NAME
/dev/mapper/VG_NAME—LV_NAME
5.格式化逻辑卷
mkfs -t FSTYPE /dev/VG_NAME/LV_NAME
mke2fs -t {ext2|ext3|ext4} /dev/ VG_NAME/LV_NAME
6.挂载逻辑卷
mount [-tFSTYPE] /dev/VG_NAME/LV_NAME 挂载点
四、VG扩展与缩减
1.VG的扩展
首先创建一个新的PV
命令:vgextend
语法:vgextend VG_NAME 设备文件
2.VG的缩减
确定要移除的PV
将此PV上的数据转移至其它PV
命令:pvmove
语法:pvmove 设备文件
从卷组中将此PV移除
语法:vgreduce VG_NAME /PATH/TO/PV
五、逻辑卷扩展
注:注意命令的局限性。
首先确定逻辑卷扩展多大
确定当前逻辑卷所在的卷组有足够的空闲空间;
扩展:
1、物理边界
lvextend -L [+]SIZE /path/to/lv
2、逻辑边界
resize2fs /path/to/device
六、逻辑卷缩减
确定缩减的前提:至少能容纳原有的所有数据。
1、卸载并强行检测文件系统;
e2fsck -f
2、逻辑边界
resize2fs /path/to/deviceSIZE
3、物理边界
lvreduce -L [-]SIZE /path/to/lv
七、LVM系统快照卷
1.生命周期为整个数据时长;在这段时长内,数据的增长量不能超出快照卷 大小;
2.快照卷应该是只读的
3. 跟原卷在同一卷组内
命令:lvcreate
Options:
-s: 快照卷;
-p r: 限制快照卷为只读访问
语法:lvcreate -L SIZE -s -p r -n LV_SNAP_NAME /path/to/lv
八、卷组与逻辑卷的移除
1.卷组的移除
命令:vgremove
语法:vgremove VG_NAME
2.逻辑卷的移除
命令:lvremove
语法:lvremove /path/to/lv
转载于:https://blog.51cto.com/dreamwolf/1256237