LVM 介紹

前言

每一個Linux使用者在安裝Linux時都會遇到這樣的困境:在爲系統分區時,如何精確評估和分配各個硬盤分區的容量,由於系統管理員不但要考慮到當前某個分區須要的容量,還要預見該分區之後可能須要的容量的最大值。由於若是估 計不許確,當遇到某個分區不夠用時管理員可能甚至要備份整個系統、清除硬盤、從新對硬盤分區,而後恢復數據到新分區。 服務器

雖然有不少動態調整磁盤的工具可使用,例如PartitionMagic等等,可是它並不能徹底解決問題,由於某個分區可能會再次被耗盡;另一個方面這須要 從新引導系統才能實現,對於不少關鍵的服務器,停機是不可接受的,並且對於添加新硬盤,但願一個能跨越多個硬盤驅動器的文件系統時,分區調整程序就不能解 決問題。 工具

所以完美的解決方法應該是在零停機前提下能夠自如對文件系統的大小進行調整,能夠方便實現文件系統跨越不一樣磁盤和分區。幸運的是Linux提供的邏輯盤卷管理(LVM,LogicalVolumeManager)機制就是一個完美的解決方案。 佈局

LVM是邏輯盤卷管理(LogicalVolumeManager)的簡稱,它是Linux環境下對磁盤分區進行管理的一種機制,LVM是創建在硬盤和 分區之上的一個邏輯層,來提升磁盤分區管理的靈活性。經過LVM系統管理員能夠輕鬆管理磁盤分區,如:將若干個磁盤分區鏈接爲一個整塊的卷組 (volumegroup),造成一個存儲池。管理員能夠在卷組上隨意建立邏輯卷組(logicalvolumes),並進一步在邏輯卷組上建立文件系 統。管理員經過LVM能夠方便的調整存儲卷組的大小,而且能夠對磁盤存儲按照組的方式進行命名、管理和分配,例如按照使用用途進行定義:「development」和「sales」,而不是使用物理磁盤名「sda」和「sdb」。並且當系統添加了新的磁盤,經過LVM管理員就沒必要將磁盤的 文件移動到新的磁盤上以充分利用新的存儲空間,而是直接擴展文件系統跨越磁盤便可。 spa

基本術語

前面談到,LVM是在磁盤分區和文件系統之間添加的一個邏輯層,來爲文件系統屏蔽下層磁盤分區佈局,提供一個抽象的存儲卷,在存儲捲上創建文件系統。首先咱們討論如下幾個LVM術語: htm

*物理存儲介質(PhysicalStorageMedia) 內存

指系統的物理存儲設備:磁盤,如:/dev/hda、/dev/sda等,是存儲系統最底層的存儲單元get

*物理卷(Physical Volume,PV) it

指磁盤分區或從邏輯上與磁盤分區具備一樣功能的設備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(如分區、磁盤等)比較,卻包含有與LVM相關的管理參數。 io

*卷組(Volume Group,VG) 擴展

相似於非LVM系統中的物理磁盤,其由一個或多個物理卷PV組成。能夠在卷組上建立一個或多個LV(邏輯卷)。

*邏輯卷(Logical Volume,LV)

相似於非LVM系統中的磁盤分區,邏輯卷創建在卷組VG之上。在邏輯卷LV之上能夠創建文件系統(好比/home或者/usr等)。

*物理塊(Physical Extent,PE)

每個物理卷PV被劃分爲稱爲PE(Physical Extents)的基本單元,具備惟一編號的PE是能夠被LVM尋址的最小單元。PE的大小是可配置的,默認爲4MB。因此物理卷(PV)由大小等同的基本單元PE組成。

*邏輯塊(Logical Extent,LE)

邏輯卷LV也被劃分爲可被尋址的基本單位,稱爲LE。在同一個卷組中,LE的大小和PE是相同的,而且一一對應。

圖所示LVM抽象模型,展現了PV、VG、LV三者之間關係:

和非LVM系統將包含分區信息的元數據保存在位於分區的起始位置的分區表中同樣,邏輯卷以及卷組相關的元數據也是保存在位於物理捲起始處的VGDA(卷組描述符區域)中。VGDA包括如下內容:PV描述符、VG描述符、LV描述符、和一些PE描述符。

系統啓動LVM時激活VG,並將VGDA加載至內存,來識別LV的實際物理存儲位置。當系統進行I/O操做時,就會根據VGDA創建的映射機制來訪問實際的物理位置。

相關文章
相關標籤/搜索