天天看點

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
               

繼續閱讀