LVM:

        Logical Volume Manager,逻辑卷管理器。重点在于可以弹性调整文件系统的容量。

常用术语:

        pv:物理卷

        vg:卷用户组

        lv:逻辑卷

        PE:物理扩展块

wKioL1X9ZfmjtrgWAAGBDAekGss846.jpg

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

        原始文件为/dev/dm-#

            wKiom1X9Y9LD2vqvAABPBQxWOCs017.jpg    spacer.gif

        其连接文件有两种命名方式:

                第一种:/dev/mapper/VG_NAME-LV_NAME

            /dev/mapper/vol0-root

            第二种:/dev/VG_NAME/LV_NAME

            /dev/vol0/root 

pv管理工具:

        pvs:简要显示pv的相关信息;

        pvdisplay:显示详细的pv相关信息;

                可以不指定具体的pv:

                    wKioL1X9ZjTCSpabAAAflaIygK4349.jpg

                查看指定的pv信息:

                    wKiom1X9ZCHCsVFLAAAqD0_a_GE520.jpg       spacer.gif 

        pvcreate [options] /dev/device:创建pv

                    wKioL1X9ZnKQeXUHAABP3IBYSUg339.jpg

                可用的选项有:

                        -f:强制创建,如果该磁盘设备上有数据会进行覆盖;

                        -u UUID:手动指定创建的pv的UUID;

                        -v:显示详细的创建过程;

vg管理工具:

        vgs:显示vg相关的信息;

        vgdisplay [/DEV/DEVICE]:查看vg的详细的信息;

                可以不指定具体的vg:

                    wKioL1X9Z37wj2JbAAAgdH-XR94600.jpg  spacer.gif

                查看指定的vg详细信息:

                    wKiom1X9ZFvAoWk9AAAj0abakPM443.jpg

        vgcreate [-s #[kKmMgGtTpPeE]]:创建vg,-s指定PE的大小;

                    wKiom1X9ZHCyJ9e9AAAn4NwotuA830.jpg

        vgextend:为vg增加一个pv 

                    wKiom1X9ZJaSEYWhAAAtlXuX2Zc353.jpg                      

        pvmove:要移除某设备之前,必须要将此设备上的数据进行移动,而且,要保证该vg中的其余的pv上有足够大的空间保存要移动的数据。

                    wKioL1X9aA_weRusAAA5TzDn5AY759.jpg

        vgreduce:移除vg中的某一个pv

                    wKiom1X9ZfLzg-b8AABSbP5nFzo473.jpg

                注意:在做vgreduce之前,要先做pvmove。

lv管理工具:

        lvs:显示简要的lv信息;

        lvsdisplay:显示详细的lv信息,当然,也可以在后面指定要查看的lv的名称;

        lvcreate -L SIZE -n NAME VG_NAME

                -L SIZE:指明创建的逻辑卷的大小,其大小必须在VG的可用空间范围之内;

                -n NAME:指明要创建的逻辑卷的名称;

                VG_NAME:在哪一个卷组上创建逻辑卷;

            wKioL1X9aFPA09TsAACz0qBIy3g088.jpg

物理边界:逻辑卷的物理存储大小

逻辑边界:逻辑卷中的文件系统的大小

扩展逻辑卷:基本没有什么风险;
        lvextend:

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

                wKiom1X9ZjLAqiqNAAAyHOk0shU937.jpg spacer.gif

        扩展物理边界之后需要重新修改lv的逻辑边界,支持联机扩展;

                wKioL1X9aIHh30uQAAAuFt1wX6w009.jpg    spacer.gif


缩减逻辑卷:

        第一步:必须先卸载该逻辑卷;

            wKiom1X9ZnTysXAQAAAh8qSWauc697.jpg

        第二步:进行文件系统的强制的检测和修复;

            wKiom1X9ZoSgwvz8AAE5-GDNXpI637.jpg    

        第三步:修改该逻辑卷的逻辑边界;

            wKiom1X9ZpbADAPWAADawR8gDH0360.jpg      

        第四步:缩减逻辑卷的物理边界;        

            wKioL1X9aO_RMcDwAAEou5aFxck104.jpg

        第五步:重新挂载;      

            wKiom1X9Z1vj08heAAAwM5uDYAo620.jpg    spacer.gif

        最后使用文件系统占用查看工具进行查看:

            wKioL1X9aajwS2jTAAE0XEG6u8w938.jpg

                spacer.gif

                        

创建lvm过程:

第一步:使用fdisk创建磁盘;

    wKiom1X9aDfTA2GhAAD8xa-bLig735.jpg

第二步:修改指定的磁盘类型为LVM类型;

    wKioL1X9ao7QWn9mAACN8VmcbXc040.jpg      spacer.gif

第三步:创建pv;

    wKiom1X9aGXCP65xAABJVJg0Fnc753.jpg       spacer.gif

第四步:创建vg;

    wKioL1X9asGQMNpcAABGvsYxkcQ722.jpg

        (1)在vg创建完成之后,可以进行vg的扩展;

                创建一个新的pv;

                    wKiom1X9aMXy2VslAABWgyhvJ_o377.jpg

              将新创建的pv加入到myvg中去;

                    wKioL1X9atKQ0evqAAAudS81gOg361.jpg

        (2)也可以进行vg的收缩;

                首先要做pvmove,将要移除的pv上的数据进行转移,前提是:必须要保证该vg中有足够的可用空间保存这些数据;

                    wKiom1X9aNKzM3V3AAA6tgNayAw151.jpg spacer.gif

                然后,做vg的收缩,删除指定的pv;

                    wKioL1X9ayGR8_5fAABTyffMURk965.jpg                       spacer.gif             

第五步:创建lv;

    wKioL1X9azrg2QrLAABIt1Q2R_Y689.jpg  spacer.gif

第六步:格式化lv;

    wKiom1X9aRKAk4P3AAA_pSO9WeA503.jpg     spacer.gif

第七步:挂载并使用;

    wKioL1X9a2CQJLcIAAA2IKD4ryk112.jpg      spacer.gif