一、LVM简介

    LVM2(LogicalVolume Manage,Version2):它是Linux环境下对磁盘分区进行管理的一种机制,将一个或多个底层块设备组织成一个逻辑设备。通过LVM管理员可以轻松管理磁盘分区,使用LVM与传统的分区方法相比有很多的优势,如:容量的分配更加灵活、逻辑卷的扩展和缩减更加方便、使用snapshot(快照)来备份数据也非常方便。通过本文你可以快速了解LVM2的使用方法。

 

二、LVM2使用详解                            

Linux磁盘管理工具LVM2详解_管理工具

(该图片来源于网络)

PV:Physical Volume 物理卷

VP:Volume Group 卷组

LV:Logical Volume 逻辑卷

 

    操作环境:通过fdisk命令已创建了3个大小分别为10G的磁盘分区/dev/sda5、/dev/sda6和/dev/sda7。

    1.PV管理工具

        pvcreate /dev/DEVICE: 创建PV

        Linux磁盘管理工具LVM2详解_Linux_02


        pvs:显示简要PV信息

        Linux磁盘管理工具LVM2详解_Linux_03


        pvdisplay:显示PV的详细信息(在命令后不输入具体PV名默认显示所有PV详细信息)

        Linux磁盘管理工具LVM2详解_管理工具_04


        pvremovePhysicalVolumeName:删除PV

        Linux磁盘管理工具LVM2详解_磁盘管理_05


    2.VG管理工具

        vgcreate  -s  #[指定PE大小]  VolumeGroupName  PhysicalDevicePath:创建VG

        Linux磁盘管理工具LVM2详解_Linux_06


        vgs:显示简要VG信息

        Linux磁盘管理工具LVM2详解_管理工具_07


        vgdisplay:显示VG的详细信息(在命令后不输入具体VG名默认显示所有VG详细信息)

        Linux磁盘管理工具LVM2详解_管理工具_08


        vgextend  VolumeGroupName  PhysicalDevicePath:扩展VG大小

        Linux磁盘管理工具LVM2详解_Linux_09

        Linux磁盘管理工具LVM2详解_管理工具_10


        vgreduce  VolumeGroupName  PhysicalDevicePath:缩减VG大小

        Linux磁盘管理工具LVM2详解_Linux_11

    注:在缩减VG之前需要先确认在缩减后VG的容量是否足够存储VG现有的数据。然后做pvmove操作,把存储在要移除的PV上的数据转移到该VG其它PV上,确保数据不会丢失。


        vgremove VolumeGroupName:删除VG

        Linux磁盘管理工具LVM2详解_管理工具_12     


    3.lv管理工具:

        lvcreate  -L  #[指定LV大小]  -n  LVNAME VolumeGroup:创建LV

        Linux磁盘管理工具LVM2详解_管理工具_13


        lvs:显示简要LV信息

        Linux磁盘管理工具LVM2详解_Linux_14


        lvdisplay:显示LV的详细信息(在命令后不输入具体LV名默认显示所有LV详细信息)

        Linux磁盘管理工具LVM2详解_管理工具_15


        lvremove  /dev/VG_NAME/LV_NAME:删除LV

        Linux磁盘管理工具LVM2详解_Linux_16


        扩展逻辑卷:

            lvextend  -L  #[+扩大多少容量或扩展到多少容量]  /dev/VG_NAME/LV_NAME

        Linux磁盘管理工具LVM2详解_磁盘管理_17


            resize2fs  /dev/VG_NAME/LV_NAME:扩展完成后需要对该LV文件系统重新定义

        Linux磁盘管理工具LVM2详解_磁盘管理_18


        缩减逻辑卷:

        注:在缩减LV前需要先确认在缩减后LV的容量是否足够存储LV现有的数据,否则会造成数据丢失或损坏。


            umount  /dev/VG_NAME/LV_NAME:先确保需要缩减的LV解除挂载


            e2fsck  -f  /dev/VG_NAME/LV_NAME:强制对该LV进行文件系统检查

        Linux磁盘管理工具LVM2详解_Linux_19


            resize2fs  /dev/VG_NAME/LV_NAME [缩减后LV的容量大小]:对该LV文件系统重新定义

        Linux磁盘管理工具LVM2详解_磁盘管理_20


            lvreduce  -L  #[-缩减多少容量或缩减到多少容量] /dev/VG_NAME/LV_NAME

        Linux磁盘管理工具LVM2详解_管理工具_21


            mount:挂载


    4.快照:snapshot

         lvcreate  -L  #[需要建立快照的容量]  -p  r  -s  -n  snapshot_name  /dev/VG_NAME/LV_NAME

        Linux磁盘管理工具LVM2详解_磁盘管理_22