1. 程式人生 > >Linux-LVM邏輯卷

Linux-LVM邏輯卷

vgdisplay 表現 大小 空間 pvdisplay creat vgcreate vdi 調整

LVM邏輯卷管理通過將底層物理硬盤抽象封裝起來,以邏輯卷的形式表現給上層系統,邏輯卷的大小可以動態調整,而且不會丟失數據。新加入的硬盤也不會改變現有上層的邏輯卷。

PE:物理擴展

PV:物理卷

VG:卷組

LV:邏輯卷

  1. 物理磁盤被格式化為PV(物理卷),空間被分為一個個PE
  2. 不同PV加入同一個VG(卷組),不同PV(物理卷)的PE全部進入VG(卷組)的PE池內
  3. LV(邏輯卷)基於PE創建,大小為PE的整數倍,組成LV(邏輯卷)的PE可能來自不同的物理磁盤
  4. LV(邏輯卷)現在就可格式化後掛載直接使用
  5. LV(邏輯卷)的擴充縮減實際上就是增加或減少組成該LV(邏輯卷)的PE的數量,其過程不丟失數據

創建LVM

1. 將物理磁盤設備初始化為PV(物理卷)

pvcreate /dev/sdb /dev/sdc

2. 創建VG(卷組),並將PV(物理卷)加入卷組中

vgcreate vgname /dev/sdb /dev/sdc

3. 基於VG(卷組)創建LV(邏輯卷)

lvcreate -n lvname -L 10G vgname

4. 為創建好的LV(邏輯卷)創建文件系統

mkfs.xfs /dev/vgname/lvname

5. 將格式化好的LV(邏輯卷)掛載使用

mount /dev/vgname/lvname /mnt

查看PV(物理卷)信息

pvdisplay(詳細信息)

pvs

查看VG(卷組)信息

vgdisplay(詳細信息)

vgs

查看LV(邏輯卷)信息

lvdisplay(詳細信息)

lvs

1. 刪除LV(邏輯卷)

lvremove /dev/vgname/lvname

2. 刪除VG(卷組)

vgremove vgname

3. 刪除PV(物理卷)

pvremove /dev/sdb /dev/sdc

VG(卷組)擴容

1. 將要添加到VG(卷組)的硬盤格式化為PV(物理卷)

pvcreate /dev/sdd

2. 將新的PV(物理卷)添加到指定卷組中

vgextend vgname /dev/sdd

3. 查看擴容後VG(卷組)大小

vgs

LV(邏輯卷)擴容

1. 查看VG(卷組)中是否有足夠空間

vgs

2. 擴大LV(邏輯卷)

lvextend -L +10G /dev/vgname/lvname

3. 查看擴充後LV(邏輯卷大小)

lvs

4. 更新文件系統

xfs_growfs /dev/vgname/lvname #xfs文件系統

resize2fs /dev/vgname/lvname #ext4文件系統

5. 查看更新後文件系統

df -h

ext4邏輯卷縮小(xfs文件系統不支持縮小)

1. 邏輯卷縮小必須離線執行,需要卸載

umount /dev/vgname/lvname

2. 檢查文件系統

e2fsck -f /dev/vgname/lvname

3. 縮小文件系統到19G

resize2fs /dev/vgname/lvname 19G

4. 縮小LV(邏輯卷)

註意:LV(邏輯卷)縮小空間一定要小於縮小文件系統後的剩余空間,否則可能會造成數據損壞

lvreduce -L -20G /dev/vgname/lvname

5. 查看縮小後的LV(邏輯卷)

lvs

6. 掛載

mount /dev/vgname/lvname /home

ll /home #查看文件是否損壞

ext4VG(卷組)縮小

umount /dev/vgname/lvname

將一個PV從指定卷組中移除

vgreduce vgname /dev/sdc

當pvs中顯示sdc不屬於任何VG(卷組)是方可移除

pvs

pvremove /dev/sdc

mount /dev/vgname/lvname /home/

Linux-LVM邏輯卷