LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是linux环境下对磁盘分区进行管理的一种机制,LVM的建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。要了解它,可以结合DM(Device mapper)逻辑设备来理解,DM在内核中它包含三个重要的对象概念,mapped device、映射表、target device。Mapped device 是一个逻辑抽象,可以理解成为内核向外提供的逻辑设备,它通过映射表描述的映射关系和target device 建立映射。从 Mapped device 到一个 target device 的映射表由一个多元组表示,该多元组由表示mapped device 逻辑的起始地址、范围、和表示在 target device 所在物理设备的地址偏移量以及target 类型等变量组成(这些地址和偏移量都是以磁盘的扇区为单位的,即 512 个字节大小)。Target device 表示的是 mapped device 所映射的物理空间段,对 mapped device 所表示的逻辑设备来说,就是该逻辑设备映射到的一个物理设备。在DM中,具体表现了逻辑卷、物理卷之间的联系与变化,也形象的描述了快照卷的作用。下面先讲一下卷组(pv、vg、lv)的命令
vgcreate创建 vgremove vgextend,vgreduce,vgs,vgdisplay,vgscan
vgcreate myvg /dev/sda{#,#} 创建
vgdisplay myvg 只查看myvg
指定pe大小:默认是4M
vgcreate VG_name /path/to/pv
-s:指定pe大小,默认是4M
vgremove myvg:删除myvg,(删除一个vg)
pvs:查看一个pv属于哪个vg (有误差20%左右)
pvcan:扫描当前用户一共有多少种pv
vgreduce:缩小vg,意味着把pv拿掉(一定要把pv上的数据挪走)
pvmove /dev/sda11 把盘sda11中的数据挪走,为以后的缩减不损害数据做准备
vgreduce myvg /dev/sda11 从myvg挪走/dev/sda11
pvremove /dev/sda11 擦除/dev/sda11
扩展vg
先创建一个pv
vgextend myvg /dev/sda12 扩展myvg
lvcreate,lvremove lvextend,lvreduce,lvresize,lvs
lvdisplay
创建lv
lvcreate -n lv_name(名字) -L #G(大小)VG_name
lvcreat -L 50M -n testlv myvg
lvs:查看创建信息
lvdisplay:显示所有lv(路径例如:dev/myvg/testlv)
mke2fs -j dev/myvg/testly
lvremove /dev/myvg/testlv = lvremove /dev/mapper/myvg-testlv
扩展逻辑卷:
lvextend 物理边界
-L [+]# 扩展 /PATH/TO/LV (+指的是在增加?GM不写是增加至?M)
resize2fs 逻辑卷(文件系统)的边界
resize2fs /PATH/TO/LV
-p 扩展到极限(与物理边界相同)
缩减逻辑卷:
注:1、不能在线缩减,得先卸载
2、确保缩减后的空间大小依然能储存原有的所有数据
3、在缩减之前应该先强行检查文件,一确保文件系统处于一致性状态。
resize2fs
df -lh 查看逻辑卷用了多少空间
umount /users 卸载挂载点
e2fsck -f /PATH/TO 强制检测
resize2fs /PATH/TO/PV 3G
(缩减逻辑卷至3G)
lvreduce -L [-]# /PATH/TO/LV(缩减物理边界至3G)
快照卷
1、生命周期为整个数据时长,在这段时长内,数据的增长量不能超出快照卷大小
2、快照卷应该是只读的
3、跟原卷在同一卷组内
lvcreate
-s
-p r|w
lvcreate -L# -n SLV_NAME -s -p r /PATH/TO/LV
在快照卷后面编辑的文件内容不可以通过快照卷来还原。而且快照卷最好都压缩并放到一个相对安全的位置。在以后的误删后,可以做最基本的还原(因为还原的的做快照卷时的,在以后可能有改变)。
|