天天看点

Linux:逻辑卷创建、扩容、挂载LVM逻辑卷

LVM逻辑卷

以下为本篇中会用到的命令

pvs                查看物理卷
    pvdisplay          查看物理卷详细信息
    vgs                查看卷组
    vgdisplay          查看卷组详细信息
    lvs                查看逻辑卷
    lvdisplay          查看逻辑卷详细信息

    pvcreate           创建物理卷(physical Volumes)
    vgcreate           创建卷组(Volme Group)
    lvcreate           创建逻辑卷(Logical Volumes)   

    vgrename           修改卷组名
    lvrename           修改逻辑卷名

    vgchange -an       禁用卷组状态
    vgchange -ay       激活卷组状态
    vgimport           导入卷组
    vgexport           导出卷组

    vgextent           扩展卷组
    lvextent           扩展逻辑卷

    lvreduce           缩减逻辑卷

    lvconvert --merge  快照还原

    lvremove           移除逻辑卷
    pvremove           移除物理卷
    vgremove           移除卷组
           

创建逻辑卷(硬盘先分区id改成Linux LVM代号8e或使用整块硬盘创建)

  1. 创建物理卷(sda6和sdb创建成物理卷)
    [[email protected] ~]#pvcreate /dev/sda6
    Physical volume "/dev/sda6" successfully created
    [[email protected] ~]#pvcreate /dev/sdb
    Physical volume "/dev/sdb" successfully created
               
  2. 创建卷组(创建vg0卷组,pe块设置为每个16M,sda6和sdb添加到vg0卷组)
    [[email protected] ~]#vgcreate vg0 -s 16M /dev/sda6 /dev/sdb
    Volume group "vg0" successfully created
               
  3. 创建逻辑卷(从vg0卷组中,创建一个名为lv0,大小为1500M的逻辑卷)
    [[email protected] ~]#lvcreate -n lv0 -L 1500M vg0
    Rounding up size to full physical extent 1.47 GiB
    Logical volume "lv0" created
               
  4. 为lv0创建文件系统 (.ext系统可扩展可缩减.xfs可扩展不可缩减)
    [[email protected] ~]#mkfs.ext4 /dev/vg0/lv0
               
  5. 修改/etc/fstab配置文件
    UUID=cdd32349-4ece-4467-9aac-ddb837673f5f /mnt/lv0  ext4  defaults  0 0 
               
  6. 创建/mnt/lv0文件夹,并挂载
    [[email protected] ~]#mkdir /mnt/lv0
    [[email protected] ~]#mount -a
               

扩展逻辑卷

  1. 查看卷组是否有剩余空间,剩余空间足够直接进行第三步开始扩展
    [[email protected] ~]#vgdisplay
               
  2. 剩余空间不组,添加硬盘或分区到卷组(把sda7的容量添加到vg0卷组)
    [[email protected] ~]#vgextend vg0 /dev/sda7
    Physical volume "/dev/sda7" successfully created
    Volume group "vg0" successfully extended
               
  3. 扩展逻辑卷 (把逻辑卷lv0扩展到10个G)
    [[email protected] ~]#lvextend  -L 10G /dev/vg0/lv0
    或
    [[email protected] ~]#lvextend -r -L 2G /dev/vg0/lv0   执行此命令无需第三步,参数-r直接自动选择并重设文件系统
               
    注:

    lvextend -r -l +100%FREE /dev/vg0/lv0

     (把剩余空间全部扩展到lv0逻辑卷)
  4. 重设文件系统(确定逻辑卷lv0是ext系统还是xfs系统选择下面对应的命令)

    blkid

    [[email protected] ~]#resize2fs /dev/vg0/lv0             ext系统对应盘
    或
    [[email protected] ~]#xfs_grop /mnt/lv0                  xfs系统对应挂载点
               

缩减逻辑卷(只能是.ext文件系统)

  1. 取消挂载逻辑卷
    [[email protected] ~]#umount /mnt/lv0
               
  2. 检查文件系统
    [[email protected] ~]#fsck -f /dev/vg0/lv0
               
  3. 缩减文件系统
    [[email protected] ~]#resize2fs /dev/vg0/lv0 2G 
               
  4. 缩减逻辑卷 (强烈建议缩减前备份,可能会丢失数据)
    [[email protected] ~]#lvreduce -L 2G /dev/vg0/lv0
               
  5. 重新挂载
    [[email protected] ~]#mount -a
               

跨主机迁移逻辑卷

  1. 卷组改名(避免迁移名字相同)
    [[email protected] ~]#vgrename vg0 newvg0 
    Volume group "vg0" successfully renamed to "newvg0"
               
  2. 逻辑卷改名(可不改)
    [[email protected] ~]#lvrename /dev/newvg0/lv0 newlv0 
    Renamed "lv0" to "newlv0" in volume group "newvg0"
               
  3. 取消挂载 (取消挂载卷组上的逻辑卷)
    [[email protected] ~]#umount /mnt/lv0
               
  4. 卷组设置成非活动状态
    [[email protected] ~]#vgchange -an newvg0 
               
  5. 查看状态 (LV Status:NOT acailable)
    [[email protected] ~]#lvdisplay
    --- Logical volume ---
    LV Path                /dev/newvg0/newlv0
    LV Name                newlv0
    VG Name                newvg0
    LV UUID                j8Psol-jzvF-p7C9-5jvW-1ecM-ectR-1meEbM
    LV Write Access        read/write
    LV Creation host, time Dadda6.10, 2018-08-21 08:39:50 +0800
    LV Status              NOT available
    LV Size                12.00 GiB
    Current LE             768
    Segments               2
    Allocation             inherit
    Read ahead sectors     auto
    vgexport newvg0 设置导出状态
               
  6. 导出卷组
    [[email protected] ~]#vgexport newvg0
    Volume group "newvg0" successfully exported
    
    [[email protected] ~]#lvdisplay
    Volume group newvg0 is exported
               
  7. 转移硬盘 (把带有要转移逻辑卷所在的所有硬盘转移)

    转移完成后

    pvscan

    扫描物理卷查看状态
  8. 导入卷组
    [[email protected] ~]#vgimport newvg0 
               
    注:如碰丢失逻辑卷

    vgreduce --removemissing --force newvg0

    可强制移除,如有丢失可能为硬盘上有其他逻辑卷,并且其他的那个逻辑卷在另一块硬盘上,未转移全。
  9. 激活newvg0卷组 (激活后用

    lvdisplay

    gvdisplay

    查看状态)
    [[email protected] ~]#vgchange -ay newvg0
               
  10. 建文件夹挂载
    [[email protected] ~]#mkdir /mnt/newvg0 
    
    [[email protected] ~]#mount /dev/newvg0/newlv0 /mnt/newlv0
               

逻辑卷快照 (快照和逻辑卷放在同一卷组内,快照大小应小于逻辑卷)

创建快照

  1. 创建快照(快照名lv0-snapshot)(-p r为了安全设置成只读)(-s 快照)(-L 1G指定大小)(lv0的快照)
    lvcreate -n lv0-snapshot -p r -s -L 1G /dev/newvg0/lv0
    *创建完毕后lvdisplay查看下状态
               
  2. 建文件夹,挂载快照(xfs需用mount-o nouuid挂载)
    mkdir /mnt/lv0snapshot
    
    mount /dev/newvg0/lv0-snapshot /mnt/lv0-snapshot
    
    注:xps系统用下面命令挂载,否则无法查看
    mount -o nouuid /dev/newvg0/lv0-snapshot /mnt/lv0-snapshot
               

还原快照

  1. 取消硬盘挂载 取消快照挂载
    umount /mnt/lv0
    
    umount /mnt/lv0-snapshot
               
  2. 合并 (还原快照)
    lvconvert --merge /dev/newvg0/lv0-snapshot
               
  3. 重新挂载硬盘即可
    mount /dev/newvg0/lv0 /mnt/lv0
               

删除快照

  1. 取消挂载
    umount /mnt/lv0-snapshot
               
  2. 删除快照
    lvremove /dev/newvgr0/lv0-snapshot
               

硬盘灯变黄,提前更换硬盘,硬盘上有逻辑卷

  1. 需先挪PE
    pvdisplay`查看卷组中别的磁盘的pe是否够用
    vgdisplay查看卷组中free pe是否够用
               
  2. 不够需找块.ext每占满的硬盘压缩。够用执行以下命令 (把sde的pe挪动到其他硬盘上)
    pvmove /dev/sde
               
  3. 把硬盘移出卷组 (把/sde盘移出newvg0卷组)移出后可用pvdisplay看看
    vgreduce newvg0 /dev/sde   
               
  4. 删除物理卷(移除后可用pvs再看看)
    pvremove /dev/sde
               

全部清空:物理卷\逻辑卷\卷组

  1. 删除/etc/fstab中逻辑卷的配置
  2. 取消挂载逻辑卷
    umount /mnt/lv0 
               
  3. 删除逻辑卷
    lvremove /dev/newvg0/lv0
               
  4. 删除卷组
    vgremove newvg0
               
  5. 删除物理卷
    pvremove newvg0
               

继续阅读