簡介
邏輯卷是一種device mapper技術,即可以將一個或者多個底層塊裝置群組織成一個邏輯裝置,從而提供動態改變大小,不停機情況下添加磁碟,快照以及備份 等功能,使得對於磁碟的管理更加方便。
Logical Volume Manager (LVM),邏輯卷管理LVM是一個多才多藝的硬碟系統工具,無論在Linux或者其他類似的系統,都是非常的好用。傳統分區使用固定大小分區,重新調整大小十分麻煩,但是LVM可以建立和管理“邏輯”卷,而不是直接使用物理硬碟,可以讓管理員彈性的管理邏輯卷的擴大縮小,操作簡單,而不損壞已儲存的資料。可以隨意將新的硬碟添加到LVM,以直接擴充已經存在的邏輯卷,LVM並不需要重啟就可以讓核心知道分區的存在。文章詳細記錄在PV/VG/LV中3個階段的建立/添加/擴充/減小/刪除等實戰操作步驟,方便自己回顧一些基礎用法,也希望能夠協助大家更好的理解LVM的原理。
邏輯卷的組成結構
邏輯卷的組成如下圖所示:
從上圖中可以看出,整個邏輯卷的體系分為3個層次:
底層的PV
中層的VG
最上層的LV
最底層的PV作為整個邏輯卷體系的最底層,可以理解為打上了可以被納入邏輯卷管理體系的標籤的整塊磁碟或者磁碟上的某個分區;中介層的VG是邏輯卷的卷組,由一個或者多個PV組成,並且用同一標準進行分塊,每一塊被稱為PE(Physical Extent)或者PP(Physical Partition),作為LVM的最小定址單元;最上層的LV是從VG中劃分出來的卷,並且作為裝置檔案,可以在其上面建立各種linux支援的檔案系統。在LV層面也有一個概念LE(Logical Extent)。LE與PE一一對應。
針對LVM底層PV的一些基本操作
對於底層的PV而言,操作的命令如下表所示:
| 命令 |
解釋 |
| pvchange |
控制指定PV是否可以指派新空間的許可權 |
| pvck |
檢查PV的LVM中繼資料的一致性 |
| pvcreate |
將指定磁碟或分區轉化為PV |
| pvdisplay |
詳細地查看系統當前的PV情況 |
| pvmove |
在同一VG卷組裡面移動一個PV的資料到另一個PV裡面 |
| pvremove |
刪除PV標籤,即移除PV |
| pvs |
簡略地查看系統當前的PV情況 |
| pvresize |
當PV對應的裝置分區(如md軟raid)擴容之後,利用該命令可以擴容PV |
| pvscan |
掃描所有打著PV標籤的裝置檔案 |
一些pv操作的實驗如下所示: $ lsblk /dev/sdb /dev/sdd1 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sdb 8:16 0 7G 0 disk sdd1 8:49 0 7G 0 part 建立pv $ pvcreate /dev/sdb /dev/sdd1 Physical volume "/dev/sdb" successfully created Physical volume "/dev/sdd1" successfully created 查看pv $ pvs PV VG Fmt Attr PSize PFree /dev/sdb lvm2 --- 7.00g 7.00g