LVM的概述及使用
一、LVM簡介
LVM是 Logical Volume Manager(邏輯卷管理)的簡寫,它由Heinz Mauelshagen在Linux 2.4內核上實現。LVM將一個或多個硬盤的分區在邏輯上集合,相當於一個大硬盤來使用,當硬盤的空間不夠使用的時候,可以繼續將其它的硬盤的分區加入其中,這樣可以實現磁盤空間的動態管理,相對於普通的磁盤分區有很大的靈活性。
與傳統的磁盤與分區相比,LVM爲計算機提供了更高層次的磁盤存儲。它使系統管理員可以更方便的爲應用與用戶分配存儲空間。在LVM管理下的存儲卷可以按需要隨時改變大小與移除
二,LVM解決了什麼難題
每個Linux使用者在安裝Linux時都會遇到這樣的困境:在爲系統分區時,如何精確評估和分配各個硬盤分區的容量,因爲系統管理員不但要考慮到當前某個分區需要的容量,還要預見該分區以後可能需要的容量的最大值。因爲如果估計不準確,當遇到某個分區不夠用時管理員可能甚至要備份整個系統、清除硬盤、重新對硬盤分區,然後恢復數據到新分區。雖然現在有很多動態調整磁盤的工具可以使用,例如PartationMagic等等,但是它並不能完全解決問
題,因爲某個分區可能會再次被耗盡;另外一個方面這需要重新引導系統才能實現,對於很多關鍵的服務器,停機是不可接受的,而且對於添加新硬盤,希望一個能跨越多個硬盤驅動器的文件系統時,分區調整程序就不能解決問題。因此完美的解決方法應該是在零停機前提下可以自如對文件系統的大小進行調整,可以方便實現文件系統跨越不同磁盤和分區。幸運的是Linux提供的邏輯盤卷管理(LVM,LogicalVolumeManager)機制就是一個完美的解決方案。
歸納來講:
LVM提供兩種比較厲害的功能:
1):可以動態的增大或者縮小磁盤的大小而不影響磁盤原有的數據
2):提供一種實現數據備份的通道--快照功能
二、 LVM基本術語及邏輯結構
前面談到,LVM是在磁盤分區和文件系統之間添加的一個邏輯層,來爲文件系統屏蔽下層磁盤分區佈局,提供一個抽象的盤卷,在盤捲上建立文件系統。首先討論以下幾個LVM術語:
物理存儲介質(The physical media):這裏指系統的存儲設備:硬盤,如:/dev/hda1、/dev/sda等等,是存儲系統最低層的存儲單元。
物理卷(physical volume):物理卷就是指硬盤分區或從邏輯上與磁盤分區具有同樣功能的設備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(如分區、磁盤等)比較,卻包含有與LVM相關的管理參數。
卷組(Volume Group):LVM卷組類似於非LVM系統中的物理硬盤,其由物理卷組成。可以在卷組上創建一個或多個“LVM分區”(邏輯卷),LVM卷組由一個或多個物理卷組成。
邏輯卷(logical volume):LVM的邏輯卷類似於非LVM系統中的硬盤分區,在邏輯卷之上可以建立文件系統(比如/home或者/usr等)。
PE(physical extent):每一個物理卷被劃分爲稱爲PE(Physical Extents)的基本單元,具有唯一編號的PE是可以被LVM尋址的最小單元。PE的大小是可配置的,默認爲4MB。
LE(logical extent):邏輯卷也被劃分爲被稱爲LE(LogicalExtents) 的可被尋址的基本單位。在同一個卷組中,LE的大小和PE是相同的,並且一一對應。
簡單來說就是:
PV:是物理的磁盤分區
VG:LVM中的物理的磁盤分區,也就是PV,必須加入VG,可以將VG理解爲一個倉庫或者是幾個大的硬盤。
LV:也就是從VG中劃分的邏輯分區
三、LVM的實現過程及命令
pv --> vg --> lv
四、LVM的使用詳解
先創建兩個分區,並將其system更改爲linux LVM格式
使用pvcreate命令創建物理卷,並使用pvs命令查看創建的結果
使用pvdisplay命令查看更詳細的pv信息
使用vgcreate命令創建vg卷,將其命名爲myvg1,然後選定分區,創建完成後使用vgs查看
使用vgextend命令對vg卷做相應的添加並查看添加的結果
使用lvcreate命令創建邏輯卷,-L 5G表示要創建的大小,-n表示LV卷的名稱myvg1表示之前創建的vg卷,創建完成後查看
創建lv卷的文件系統
掛載分區
查看掛載的情況
在擴展分區時,先確定擴展的目標大小;並確保對應的卷組中有足夠的空閒空間可用。先需要使用lvextend命令擴展物理分區
然後在使用resize2fs命令擴展邏輯分區,擴展完後查看擴展結果
卸載分區時,先確定縮減後的目標大小;並確保對應的目標邏輯卷大小中有足夠的空間可容納原有所有數據。
先查看自己已用的空間
縮減分區時必須離線縮減,卸除掛載
強制檢查
然後縮減邏輯卷的大小
再縮減物理卷的大小
縮減完後掛載
查看縮減結果
創建快照卷
在創建快照卷前需要確保所有進程不在向計算機內寫入,並且需要將掛載點權限更改爲ro狀態,然後執行創建快照卷
創建快照卷,-L表示卷的大小,-n表示卷的名字,-p r表示只有只讀權限,-s表示創建快照卷,/dev/myvg/mylv表示要創建快照卷的目錄
創建完以後再將權限改回至rw狀態
創建完後要先備份,備份完成後將其卸載掛載,然後再移除快照卷
當不需要LVM時可將其移除:
移除時需要從lv --> vg --> pv
移除過程如下
先解除掛載
移除邏輯卷
移除卷組
移除物理卷