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