NO IMAGE

LVM(Logicl Volume Manager),邏輯卷管理器,通過使用邏輯卷管理器對硬碟儲存裝置進行管理,可以實現硬碟空間的動態劃分和調整。

一、 基本概念

1、 物理卷—–PV(Physical Volume)
物理卷在邏輯卷管理中處於最底層,它可以是實際物理硬碟上的分割槽,也可以是整個物理硬碟。

2、 卷組——–VG(Volumne Group)
卷組建立在物理卷之上,一個卷組中至少要包括一個物理卷,在卷組建立之後可動態新增物理捲到卷組中。一個邏輯卷管理系統工程中可以只有一個卷組,也可以擁有多個卷組。

3、 邏輯卷—–LV(Logical Volume)
邏輯卷建立在卷組之上,卷組中的未分配空間可以用於建立新的邏輯卷,邏輯卷建立後可以動態地擴充套件和縮小空間。系統中的多個邏輯卷可以屬於同一個卷組,也可以屬於不同的多個卷組。

4、 物理區域–PE(Physical Extent)
物理區域是物理卷中可用於分配的最小儲存單元,物理區域的大小可根據實際情況在建立物理卷時指定。物理區域大小一旦確定將不能更改,同一卷組中的所有物理卷的物理區域大小需要一致。

5、 邏輯區域—LE(Logical Extent)
邏輯區域是邏輯卷中可用於分配的最小儲存單元,邏輯區域的大小取決於邏輯卷所在卷組中的物理區域的大小。

6、 卷組描述區域—–(Volume Group Descriptor Area)
卷組描述區域存在於每個物理卷中,用於描述物理卷本身、物理卷所屬卷組、卷組中的邏輯卷及邏輯卷中物理區域的分配等所有資訊,卷組描述區域是在使用pvcreate建立物理卷時建立的。

二、 LVM的一般操作過程

1、 在磁碟分割槽上建立物理卷
#fdisk /dev/hdb
#pvdisplay /dev/hdb1 //在已經建立好的分割槽或硬碟上建立物理卷
#pvcreate /dev/hdb1

2、 使用物理卷建立卷組
#vgcreate myVG /dev/hdb1 //建立卷組,日後可以根據需要新增新的物理捲到已有卷組中

3、 在卷組中建立邏輯卷
#lvcreate –L 10M –n myLV1 myVG //從已有卷組建立邏輯卷,通常只分配部分空間給該邏//輯卷

4、 在邏輯捲上建立檔案系統
5、 將檔案系統掛載到Linux系統的目錄樹中
6、 在卷組中新增新的物理卷
當卷組中沒有足夠的空間分配給邏輯卷時,可以使用vgextend命令新增新的物理捲到該卷組中,來擴充卷組容量。在一引起特殊的情況下也可以把卷組中現有的物理卷移出卷組。
#vgextend myVG /dev/hdb2

7、 擴充邏輯卷的容量
當邏輯卷的空間不能滿足需要時,可以使用lvextend命令把卷組中的空閒空間分配到該邏輯卷以擴充套件邏輯卷的容量。在邏輯卷的空閒空間過大時,也可以使用lvreduce命令縮減邏輯卷的容量。這樣就實現了邏輯卷容量的動態調整。
#lvextend –L 4M /dev/myVG/myLV

8、 調整邏輯卷中檔案系統的大小

三、 常用命令

1、 物理卷命令
一般維護命令:
#pvscan //在系統的所有磁碟中搜尋已存在的物理卷
#pvdisplay 物理卷全路徑名稱 //用於顯示指定物理卷的屬性。
#pvdata 物理卷全路徑名稱 //用於顯示物理卷的卷組描述區域資訊,用於除錯目的。
#pvchange –x|–allocation {y|n} 物理卷全路徑名 //用於改變物理卷的分配許可設定

物理卷的建立與刪除命令
#pvcreate 裝置全路徑名 //用於在磁碟或磁碟分割槽上建立物理卷初始化資訊,以便對
//該物理捲進行邏輯卷管理。
#pvmove 源物理卷全路徑我[目的物理卷全路徑名] //用於把某物理卷中的資料轉
//移到同卷組中其他的特刊卷中。

2、 卷組命令
一般維護命令
#vgscan //檢測系統中所有磁碟
#vgck [卷組名] //用於檢查卷組中卷組描述區域資訊的一致性。
#vgdisplay [卷組名] //顯示卷組的屬性資訊
#vgrename 原卷組名 新卷組名
#vgchange -a y|n [卷組名] //改變卷組的相應屬性。是否可分配
#vgchange -l 最大邏輯卷數 //卷組可容納最大邏輯卷數
#vgchange -x y|n [卷組名] //卷是否有效
#vgmknodes [卷組名|卷組路徑] //用於建立(重新建立)已有卷組目錄和其中的裝置文
//件

卷組配置的備份與恢復命令
#vgcfgbackup [卷組名] //把卷組中的VGDA資訊備份到“/etc/lvmconf”目錄中的檔案
#vgcfgrestore -n 卷組名 物理卷全路命名 //從備份檔案中必得指定物理卷的資訊

卷組的建立與刪除命令
#vgcreate 卷組名 物理卷全路徑名[物理卷全路徑名]
#vgmove 卷組名

卷組的擴充與縮小命令
#vgextend 卷組名 物理卷全路徑名[物理卷全路徑名]
#vgreduce 卷組名 物理卷全路徑名[物理卷全路徑名]

卷組的合併與拆分
#vgmerge 目的卷組名 源卷組名 //合併兩個已經存在的卷組,要求兩個卷組的物理
//區域大小相等且源卷組是非活動的。
#vgsplit 現有卷組 新卷組 物理卷全路徑名[物理卷全路徑名]

卷組的輸入與輸出命令
#vgexport 卷組名
#vgimport 卷組名 卷組中的物理卷[卷組中的物理卷]

3、 邏輯卷命令
一般命令
#lvscan
#lvdisplay 邏輯卷全路徑名[邏輯卷全路徑名]
#lvrename 舊邏輯卷全路徑名 新邏輯卷全路徑名
#lvrename 卷組名 舊邏輯卷名 新邏輯卷名
#lvchange
#e2fsadm -L |- 邏輯卷增減量 邏輯卷全路徑名

邏輯卷的建立與刪除命令
#lvcreate
#lvremove

邏輯卷的擴充與縮小命令
#lvextend -L|–size 邏輯卷大小增量 邏輯卷全路徑名
#lvreduce q -L|–size 邏輯卷減小量 邏輯卷全路徑名

4、 邏輯卷管理命令
#lvmdiskscan //檢測所有的SCSI、IDE等儲存裝置
#lvmchange -R|–reset //復位邏輯卷管理器
#lvmsadc [日誌檔案全路徑名] //收信邏輯卷管理器讀寫統計資訊,儲存到日誌文
//件中。
#lvmsar 日誌檔案全路徑名 //從lvmsadc命令生成的日誌檔案中讀取並報告邏輯卷
//管理器的讀寫統計資訊。