LVM管理

優點

比起正常的硬盤分區管理,LVM更富於彈性:

  • 使用卷組(VG),使衆多硬盤空間看起來像一個大硬盤。  

  • 使用邏輯卷(LV),可以創建跨越衆多硬盤空間的分區。  

  • 可以創建小的邏輯卷(LV),在空間不足時再動態調整它的大小。  

  • 在調整邏輯卷(LV)大小時可以不用考慮邏輯卷在硬盤上的位置,不用擔心沒有可用的連續空間。可以在線(online)對邏輯卷(LV)和卷組(VG)進行創建、刪除、調整大小等操作。LVM上的文件系統也需要重新調整大小,某些文件系統也支持這樣的在線操作。  

  • 無需重新啓動服務,就可以將服務中用到的邏輯卷(LV)在線(online)/動態(live)遷移至別的硬盤上。  

  • 允許創建快照,可以保存文件系統的備份,同時使服務的下線時間(downtime)降低到最小。

這些優點使得LVM對服務器的管理非常有用,對於桌面系統管理的幫助則沒有那麼顯著,你需要根據實際情況進行取捨。

缺點
  • 只能在Linux上使用。對於其他操作系統(如FreeBSD, Windows等),尚未有官方支持。  

  • 在系統設置時需要更復雜的額外步驟。  

  • 假如你使用的是btrfs文件系統,那麼它所提供的子卷(subvolume)實際上已經時一層可動態調整的存儲層,此時再用LVM就顯得多餘了。

LVM基本組成塊(building blocks)

LVM利用Linux內核的device-mapper來實現存儲系統的虛擬化(系統分區獨立於底層硬件)。 通過LVM,你可以實現存儲空間的抽象化並在上面建立虛擬分區(virtual partitions),可以更簡便地擴大和縮小分區,可以增刪分區時無需擔心某個硬盤上沒有足夠的連續空間,是用來方便管理的,不會提供額外的安全保證。

LVM的基本組成塊(building blocks)如下:

  • 物理卷Physical volume (PV):可以在上面建立卷組的媒介,可以是硬盤分區,也可以是硬盤本身或者回環文件(loopback file)。物理捲包括一個特殊的header,其餘部分被切割爲一塊塊物理區域(physical extents)。  

  • 卷組Volume group (VG):將一組物理卷收集爲一個管理單元。

  • 邏輯卷Logical volume (LV):虛擬分區,由物理區域(physical extents)組成。

  • 物理區域Physical extent (PE):硬盤可供指派給邏輯卷的最小單位(通常爲4MB)。

LVM方式

  卷組VG1 (/dev/MyStorage/ = /dev/sda1 + /dev/sda2 + /dev/sdb1):
     _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ 
    |邏輯卷1 15GB                |邏輯卷2 35GB                      |邏輯卷3 200GB                      |
    |/dev/MyStorage/rootvol |/dev/MyStorage/homevol    |/dev/MyStorage/mediavol      |
    |_ _ _ _ _ _ _ _ _ _ _ _ _ _ __|_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ |_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _|

lvm

創建物理卷(PV)

pvcreate /dev/sdc{1,2}

pvs 查看創建信息

pvdisplay  查看已創建好的物理卷

pvdisplay /dev/sdc1  查看已創建好的物理卷

刪除物理卷(PV)

pvmove /dev/sdc1 移除sdc1


創建卷組(VG)

vgcreate VG_NAME /PATH/PV  -s#:PE大小

vgcreate myvg /dev/sdc{1,2}

vgs 命令查看卷組

vgdisplay myvg  命令查看卷組

移除邏輯組(LV)
vgremove myvg 移除myvg 
vgreduce myvg 調整myvg大小


創建邏輯卷(LV)

lvcreate –n LV_NAME –L #G VG_NAME

lvcreate -C y -L 10G VG_NAME -n LV_NAME

-C y參數用來指定邏輯卷的空間分配是連續的,這保證了你所創建的swap空間不會被分散在不連續的物理空間甚至不同的硬盤中。

lvcreate –L 50M –n testlv myvg

lvs 查看邏輯卷

lvdisplay   查看邏輯卷

lvcreate -l +100%FREE VolGroup00 -n lvolmedia
mke2fs –j /dev/myvg/testlv 格式化磁盤
mount /dev/myvg/testlv /mnt 掛載磁盤
移除邏輯卷(LV)
umount /mnt
lvremount /dev/myvg/testlv 移除lv
擴展邏輯卷(LV)
lvextend 
-L [+]# /PATH/LV
resize2fs 大小調整
resize –p /PATH/LV
縮減邏輯卷(LV)
1.不能在線操作。
2.確保縮減後的空間能存儲原有數據
3.在縮減後檢查文件的一致性
df –lh 
unount
e2fsck –f /dev/myvg/testv
resize2fs /dev/myvg/testlv 100M
lvreduce –L 100M /dev/myvg/testlv
mount /dev/myvg/testlv /mnt





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章