逻辑卷(LVM)管理目的是把硬盘空间从物理硬盘的管理方式中跳出来,进行更方便的统一管理分配。LVM将存储虚拟化,使用逻辑卷,你不会受限于物理磁盘的大小,另外,与硬件相关的存储设置被其隐藏,你可以不用停止应用或卸载文件系统来调整卷大小或数据迁移,这样可以减少操作成本。


逻辑卷管理器(LVM):

允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小;

允许在多个物理设备间重新组织文件系统;

    将设备指定为物理卷;

    用一个或者多个物理卷来创建一个卷组;

    物理卷是用固定大小的物理区域(Physical Extent,PE )来定义的;

    在物理卷上创建的逻辑卷是由物理区域(PE )组成;

    可以在逻辑卷上创建文件系统;

LVM 介绍:

LVM: Logical Volume Manager, Version: 2

dm: device mapper:  将一个或多个底层块设备组织成一个逻辑设备的模块;

设备名:/dev/dm-#

软链接:

    /dev/mapper/VG_NAME-LV_NAME

    /dev/mapper/vol0-root

    /dev/VG_NAME/LV_NAME

    /dev/vol0/root

LVM更改文件系统的容量:

LVM可以弹性的更改LVM的容量:

    通过交换PE来进行资料的转换,将原来LV 内的PE转移到其他的设备中以降低LV 的容量,或将其他设备中的PE加到LV中以加大容量;

pv 管理工具

    显示pv 信息

        pvs:简要pv 信息显示

        pvdisplay:显示详细的信息

    创建pv

        pvcreate /dev/DEVICE

vg 管理工具

    显示卷组

        vgs

        vgdisplay

    创建卷组

        vgcreate [-s #[kKmMgGtTpPeE]] VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]

    管理卷组

        vgextend VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]

        vgreduce VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]

    删除卷组

        先做pvmove,再做vgremove

lv 管理工具

    显示逻辑卷

        lvs

        Lvdisplay

    创建逻辑卷

        lvcreate -L #[mMgGtT] -n NAME VolumeGroup

    删除逻辑卷

        lvremove /dev/VG_NAME/LV_NAME

重设文件系统大小

    fsadm [options] resize device [new_size[BKMGTEP]]resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]

扩展和缩减逻辑卷

    扩展逻辑卷:

        # lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME

        # resize2fs /dev/VG_NAME/LV_NAME

    缩减逻辑卷:

        # umount /dev/VG_NAME/LV_NAME

        # e2fsck -f /dev/VG_NAME/LV_NAME

        # resize2fs /dev/VG_NAME/LV_NAME

        #[mMgGtT]

        # lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME

        # mount

逻辑卷创建实例:(xfs文件系统只能扩展不能缩减。)

1、fdisk t 8e (创建磁盘或分区并改为 8e 格式)

2、pvcreate  /dev/sd{b2,c} (创建物理卷)

pvs 或 pvdisplay (查看物理卷)

3、vgcreate  vg0  /dev/sd{b2,c} (创建卷组)

vgs 或 vgdisplay (查看卷组)

4、lvcreate -n lv0 -L 15G vg1(创建逻辑卷)

lvs 或 lvdisplay (查看逻辑卷)

5、创建文件系统

mkfs.ext4 /dev/vg1/lv0   (给逻辑卷创建文件系统)

6、挂载

vim /etc/fstab  (挂载逻辑卷)  (挂载的是文件系统的UUID)(blkid  可以查看文件的UUID)

7、逻辑卷扩展 (大L指的是空间的大小,小l指的是PE的个数)

lvextend -L 25G /dev/vg1/lv0  (先给逻辑卷扩展空间)(-L 25G  代表着扩展到25G)

lvextend -l +100%FREE /dev/vg1/lv0 (先给逻辑卷扩展空间) (-l +100%FREE  代表着把所有空间用来扩展 )

resize2fs /dev/vg1/lv0  (再给逻辑卷扩展文件系统)

8、卷组扩展

pvcreate /dev/sdc  (创建物理卷)

vgextend vg0 /dev/sdc  (把物理卷添加到 vg0 这个卷组中)

9、逻辑卷缩减(缩减比较危险,必须备份,必须严格按照顺序来操作)

    1,umount /mnt/lv0/  (必须先取消逻辑卷的挂载)

    2,e2fsck -f /dev/vg1/lv0  (再查看逻辑卷的文件系统)

    3,resize2fs  /dev/vg1/lv0  10G (再缩减文件系统)(10G  代表着把文件系统缩减到10G)

    4,lvreduce  -L 10G /dev/vg1/lv0  (再缩减逻辑卷)(确保数据没有超过10G)(-L 10G  代表着把逻辑卷缩减到10G)

    5,mount -a

10,删除物理卷

pvmove /dev/(你要搬走pv) (移动PE)

vgreduce  /dev/(你要搬走pv)   (从卷组中移除物理卷)

pvremove   /dev/(你要搬走pv)   (删除物理卷)

11,删除逻辑卷

umount /mnt/lv0/  (先取消逻辑卷的挂载)

vim  /etc/fstab  (删除你编辑的数据)

lvremove  /dev/vg1/lv0  (删除逻辑卷)

12,删除卷组

umount /mnt/lv0/  (先取消逻辑卷的挂载)

vim  /etc/fstab  (删除你编辑的数据)

vgremove  /dev/vg1   (删除卷组会把逻辑卷也一起删了)