美文网首页
lvm基本应用

lvm基本应用

作者: SRE1 | 来源:发表于2019-04-12 10:57 被阅读0次

    LVM2:
    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

    [root@promote ~]# cd /dev/mapper
    [root@promote mapper]# ll
    total 0
    lrwxrwxrwx. 1 root root       7 Apr 11 21:37 centos-home -> ../dm-2
    lrwxrwxrwx. 1 root root       7 Apr 11 21:37 centos-root -> ../dm-0
    lrwxrwxrwx. 1 root root       7 Apr 11 21:37 centos-swap -> ../dm-1
    crw-------. 1 root root 10, 236 Apr 11 21:37 control
    

    pv(物理卷)管理工具:

    pvs:简要pv信息显示

    [root@promote ~]# pvs
      PV         VG             Fmt  Attr PSize    PFree
      /dev/sda2  centos_promote lvm2 a--  <199.00g 4.00m
    

    pvdisplay:显示pv的详细信息

    [root@promote ~]# pvdisplay
      --- Physical volume ---
      PV Name               /dev/sda2
      VG Name               centos_promote
      PV Size               <199.00 GiB / not usable 3.00 MiB
      Allocatable           yes 
      PE Size               4.00 MiB
      Total PE              50943
      Free PE               1
      Allocated PE          50942
      PV UUID               M6rkVy-FZMk-girX-Vul7-FEcN-sJS6-xDwcvU
    

    pvcreate /dev/DEVICE: 创建pv

    vg(卷组)管理工具:

    vgs:简要显示vg信息

    [root@promote ~]# vgs
      VG             #PV #LV #SN Attr   VSize    VFree
      centos_promote   1   3   0 wz--n- <199.00g 4.00m
    

    vgdisplay:显示vg的详细信息

    [root@promote ~]# vgdisplay
      --- Volume group ---
      VG Name               centos_promote
      System ID             
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  4
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                3
      Open LV               3
      Max PV                0
      Cur PV                1
      Act PV                1
      VG Size               <199.00 GiB
      PE Size               4.00 MiB
      Total PE              50943
      Alloc PE / Size       50942 / 198.99 GiB
      Free  PE / Size       1 / 4.00 MiB
      VG UUID               fH4Oc1-iVlL-HJqs-HtcU-2XNA-wSch-V7laxn
    

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

    先做pvmove vgremove

    lv(逻辑卷)管理工具:

    lvs:简要显示lv信息

    [root@promote ~]# lvs
      LV   VG             Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
      home centos_promote -wi-ao---- 146.99g                                                    
      root centos_promote -wi-ao----  50.00g                                                    
      swap centos_promote -wi-ao----   2.00g       
    

    lvdisplay:显示lv的详细信息

    [root@promote ~]# lvdisplay
     --- Logical volume ---
      LV Path                /dev/centos_promote/swap
      LV Name                swap
      VG Name                centos_promote
      LV UUID                Xcy2JA-IZ6C-0jC2-VkBK-TXLL-PEOv-bSnTNc
      LV Write Access        read/write
      LV Creation host, time promote.cache-dns.local, 2019-04-11 21:52:32 +0800
      LV Status              available
      # open                 2
      LV Size                2.00 GiB
      Current LE             512
      Segments               1
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     8192
      Block device           253:1
    
      --- Logical volume ---
      LV Path                /dev/centos_promote/home
      LV Name                home
      VG Name                centos_promote
      LV UUID                tpMG5K-GlWc-o8qX-gtoa-46xv-eQSs-Hktet3
      LV Write Access        read/write
      LV Creation host, time promote.cache-dns.local, 2019-04-11 21:52:32 +0800
      LV Status              available
      # open                 1
      LV Size                146.99 GiB
      Current LE             37630
      Segments               1
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     8192
      Block device           253:2
    
      --- Logical volume ---
      LV Path                /dev/centos_promote/root
      LV Name                root
      VG Name                centos_promote
      LV UUID                jMtc29-aRsN-bXIi-SZyG-aEdJ-3WTk-yX7QAN
      LV Write Access        read/write
      LV Creation host, time promote.cache-dns.local, 2019-04-11 21:52:32 +0800
      LV Status              available
      # open                 1
      LV Size                50.00 GiB
      Current LE             12800
      Segments               1
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     8192
      Block device           253:0
    

    lvcreate -L #[mMgGtT] -n NAME VolumeGroup
    lvremove /dev/VG_NAME/LV_NAME

    扩展逻辑卷:

    # 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

    快照:snapshot

    lvcreate -L #[mMgGtT] -p r -s -n snapshot_lv_name original_lv_name

    [root@localhost ~]# mount /dev/myvg/mylv /mydata/
    [root@localhost ~]# lvcreate -L 10G -s -n mysnap /dev/myvg/mylv
      Using default stripesize 64.00 KiB.
      Logical volume "mysnap" created.
    [root@localhost ~]# mount /dev/myvg/mysnap /snap/
    

    练习:
    1、创建一个10G的卷组,取名给myvg,PE大小为16MB

    [root@localhost ~]# fdisk -l /dev/sdd
    
    磁盘 /dev/sdd:21.5 GB, 21474836480 字节,41943040 个扇区
    Units = 扇区 of 1 * 512 = 512 bytes
    扇区大小(逻辑/物理):512 字节 / 512 字节
    I/O 大小(最小/最佳):512 字节 / 512 字节
    磁盘标签类型:dos
    磁盘标识符:0x2a039123
    
       设备 Boot      Start         End      Blocks   Id  System
    /dev/sdd1            2048    10487807     5242880   8e  Linux LVM
    /dev/sdd2        10487808    20973567     5242880   8e  Linux LVM
    /dev/sdd3        20973568    31459327     5242880   8e  Linux LVM
    /dev/sdd4        31459328    41943039     5241856   8e  Linux LVM
    [root@localhost ~]# pvcreate /dev/sdd{1,2}
      Physical volume "/dev/sdd1" successfully created
      Physical volume "/dev/sdd2" successfully created
    
    [root@localhost ~]# vgcreate  -s 16M myvg /dev/sdd{1,2}
      Volume group "myvg" successfully created
    [root@localhost ~]# vgdisplay myvg
      --- Volume group ---
      VG Name               myvg
      System ID             
      Format                lvm2
      Metadata Areas        2
      Metadata Sequence No  1
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                0
      Open LV               0
      Max PV                0
      Cur PV                2
      Act PV                2
      VG Size               9.97 GiB
      PE Size               16.00 MiB
      Total PE              638
      Alloc PE / Size       0 / 0   
      Free  PE / Size       638 / 9.97 GiB
      VG UUID               RpVYYx-SsPF-2h7l-9hlW-FXMf-ti5T-iCytfw
    

    2、创建一个逻辑卷,取名为mylv,大小为5G。

    [root@localhost ~]# lvcreate -L 5G -n mylv myvg
      Logical volume "mylv" created.
    

    3、为卷组myvg新增一个分区,扩展其大小为15G;

    [root@localhost ~]# pvcreate /dev/sdd{3,4}
      Physical volume "/dev/sdd3" successfully created.
      Physical volume "/dev/sdd4" successfully created.
    [root@localhost ~]# vgextend myvg /dev/sdd3
      Volume group "myvg" successfully extended
    [root@localhost ~]# vgdisplay myvg
      --- Volume group ---
      VG Name               myvg
      System ID             
      Format                lvm2
      Metadata Areas        3
      Metadata Sequence No  4
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                1
      Open LV               0
      Max PV                0
      Cur PV                3
      Act PV                3
      VG Size               14.95 GiB
      PE Size               16.00 MiB
      Total PE              957
      Alloc PE / Size       320 / 5.00 GiB
      Free  PE / Size       637 / 9.95 GiB
      VG UUID               RpVYYx-SsPF-2h7l-9hlW-FXMf-ti5T-iCytfw
    

    4、在格式化挂载逻辑卷mylv之后,尝试扩展逻辑卷mylv大小为10G;

    [root@localhost ~]# df -lh 
    文件系统                   容量  已用  可用 已用% 挂载点
    /dev/mapper/centos-root    18G  4.8G  13G  28%  /
    .....
    /dev/mapper/myvg-mylv    4.8G   66M  4.5G    2% /mydata
    [root@localhost ~]# umount /mydata
    [root@localhost ~]# lvextend -L +5G /dev/myvg/mylv 
      Size of logical volume myvg/mylv changed from 5.00 GiB (320 extents) to 10.00 GiB (640 extents).
      Logical volume myvg/mylv successfully resized.
    [root@localhost ~]# resize2fs /dev/myvg/mylv 
    resize2fs 1.42.9 (28-Dec-2013)
    Resizing the filesystem on /dev/myvg/mylv to 2621440 (4k) blocks.
    The filesystem on /dev/myvg/mylv is now 2621440 blocks long.
    [root@localhost ~]# lvdisplay /dev/myvg/mylv
      --- Logical volume ---
      LV Path                /dev/myvg/mylv
      LV Name                mylv
      VG Name                myvg
      LV UUID                LUVw2b-hxTp-nMWh-swgU-n62l-hSL3-QVUoEY
      LV Write Access        read/write
      LV Creation host, time localhost.localdomain, 2018-03-08 20:48:31 +0800
      LV Status              available
      # open                 0
      LV Size                10.00 GiB
      Current LE             640
      Segments               3
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     8192
      Block device           253:6
    

    5、使用快照备份对应的逻辑卷内容,备份完成会后,删除快照;

    [root@localhost ~]# tar Jcf snaptest.tar.xz /snap/*
    tar: 从成员名中删除开头的“/”
    [root@localhost ~]# ll snaptest.tar.xz 
    -rw-r--r--. 1 root root 7820112 3月   8 21:11 snaptest.tar.xz
    [root@localhost ~]# umount /snap/
    [root@localhost ~]# lvremove /dev/myvg/mysnap 
    Do you really want to remove active logical volume myvg/mysnap? [y/n]: y
      Logical volume "mysnap" successfully removed
    

    6、缩减逻辑卷mylv的大小为6G;

    root@localhost ~]# umount /dev/myvg/mylv 
    [root@localhost ~]# e2fsck -f /dev/myvg/mylv
    e2fsck 1.42.9 (28-Dec-2013)
    第一步: 检查inode,块,和大小
    第二步: 检查目录结构
    第3步: 检查目录连接性
    Pass 3A: Optimizing directories
    Pass 4: Checking reference counts
    第5步: 检查簇概要信息
    
    /dev/myvg/mylv: ***** 文件系统已修改 *****
    /dev/myvg/mylv: 3722/655360 files (0.1% non-contiguous), 91436/2621440 blocks
    [root@localhost ~]# resize2fs /dev/myvg/mylv 6G
    resize2fs 1.42.9 (28-Dec-2013)
    Resizing the filesystem on /dev/myvg/mylv to 1572864 (4k) blocks.
    The filesystem on /dev/myvg/mylv is now 1572864 blocks long.
    [root@localhost ~]# lvreduce -L 6G /dev/myvg/mylv 
      WARNING: Reducing active logical volume to 6.00 GiB.
      THIS MAY DESTROY YOUR DATA (filesystem etc.)
    Do you really want to reduce myvg/mylv? [y/n]: y
      Size of logical volume myvg/mylv changed from 10.00 GiB (640 extents) to 6.00 GiB (384 extents).
      Logical volume myvg/mylv successfully resized.
    root@localhost ~]# mount /dev/myvg/mylv /mydata/
    [root@localhost ~]# head -n 2 /mydata/passwd  
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    

    7、删除逻辑卷,卷组及物理卷

    [root@localhost ~]# umount /mydata/
    [root@localhost ~]# lvremove /dev/myvg/mylv 
    Do you really want to remove active logical volume myvg/mylv? [y/n]: y
      Logical volume "mylv" successfully removed
    [root@localhost ~]# vgremove /dev/myvg
      Volume group "myvg" successfully removed
    [root@localhost ~]# pvremove /dev/sdd{1,2,3,4}
      Labels on physical volume "/dev/sdd1" successfully wiped.
      Labels on physical volume "/dev/sdd2" successfully wiped.
      Labels on physical volume "/dev/sdd3" successfully wiped.
      Labels on physical volume "/dev/sdd4" successfully wiped.
    

    相关文章

      网友评论

          本文标题:lvm基本应用

          本文链接:https://www.haomeiwen.com/subject/wojqwqtx.html