總結歸納:
物理卷(physical volume,PV)
卷組(volume group,VG)
邏輯卷(logical volume,LV)
創建邏輯卷通常包括如下步驟:
· 創建分區
· 創建物理卷
· 創建卷組
· 激活卷組
· 創建邏輯卷
· 創建文件系統
查看:
# pvdisplay //--查看物理卷信息
# vgdisplay //--查看卷組信息
# lvdisplay //--查看邏輯卷信息
創建:
# pvcreate /dev/sdb /dev/sdc /dev/sdd
# vgcreate vgtest /dev/sdb /dev/sdc /dev/sdd //--指定該卷組的名爲“vgtest”
# lvcreate -n lvtest1 vgtest //---n:用來指定所創建的邏輯卷名稱
# mkfs.ext3 /dev/vgtest/lvtest1 //--創建文件系統
[@more@]
補充詳細資料
LVM是Logical Volume Manager(邏輯卷管理器)的簡寫,它爲主機提供了更高層次的磁盤存儲管理能力。LVM可以幫助系統管理員爲應用與用戶方便地分配存儲空間。在LVM 管理下的邏輯卷可以按需改變大小或添加移除。另外,LVM可以爲所管理的邏輯卷提供定製的命名標識。因此,使用LVM主要是方便了對存儲系統的管理,增加 了系統的擴展性。
目前LVM在Linux下有兩個版本,分別是LVM 1和LVM 2,LVM2不僅僅是Linux邏輯卷管理在版本與功能上的升級,而且是架構在一個新的內核存儲子系統(DM,device-mapper)之上的。這個 存儲子系統提供了一個輕量級的、可擴展的卷管理設施。除了在原有LVM卷管理功能的基礎上,Linux的邏輯卷管理將會爲用戶提供更多的存儲管理方案,如 鏡像、加密卷、多路徑技術。所以在本節將以LVM 2爲例來詳細介紹LVM的創建與管理。
LVM相關概念和術語
LVM是建立在磁盤分區和文件系統之間的一個邏輯層,來爲文件系統屏蔽下層磁盤分區佈局,提供一個邏輯的盤卷,再在盤捲上來建立文件系統。LVM的結構如圖1如示:
圖1 LVM結構圖
在上面的LVM結構圖中,涉及到了很多LVM的相關術語,那麼關於這些術語的詳細說明如下:
物理卷(physical volume,PV)
物理卷就是指硬盤分區,也可以是整個硬盤或已創建的軟RAID ,是LVM的基本存儲設備,與普通物理存儲介質的區別是該設備包含有LVM相關的管理參數。
卷組(volume group,VG)
卷組是由一個或多個物理卷所組成的存儲池,在卷組上能創建一個或多個“LVM分區”(邏輯卷)。
邏輯卷(logical volume,LV)
LVM的邏輯卷類似於非LVM系統中的硬盤分區,它建立在卷組之上,是一個標準的塊設備,在邏輯卷之上可以建立文件系統。可以做這樣一個設想來理解 以上三者的關係:如果把PV比做地球的一個板塊,VG則是一個地球,因爲地球是由多個板塊組成的,那麼在地球上劃分一個區域並標記爲亞洲,則亞洲就相當於 一個LV。
物理塊(physical extent,PE)
物理卷以大小相等的物理塊爲存儲的基本單位,同時也是LVM尋址的最小單元。
邏輯塊(logical extent,LE)
邏輯卷以大小相等的邏輯塊爲存儲的基本單位,在同一個卷組中,LE的大小和PE是相等的,並且一一對應。
卷組描述區域(Volume Group Descriptor Area,VGDA)
和磁盤將包含分區信息的元數據保存在位於分區的起始位置的分區表中一樣,邏輯卷以及卷組相關的元數據也是保存在位於物理卷的VGDA中。VGDA包 括以下內容: PV描述符、VG描述符、LV描述符、和一些PE描述符。系統啓動LVM時激活VG,並將VGDA加載至內存,來識別LV的實際物理存儲位置。當系統進行 I/O操作時,就會根據VGDA建立的映射機制來訪問實際的物理位置。
創建邏輯卷
創建邏輯卷通常包括如下步驟:
· 創建分區
· 創建物理卷
· 創建卷組
· 激活卷組
· 創建邏輯卷
· 創建文件系統
下面將通過一個具體的實例來詳細介紹創建邏輯卷的整個過程。
【實例1】
利用/dev/sdb、/dev/sdc、/dev/sdd這三塊磁盤創建一個卷組,再在卷組上創建兩個邏輯卷,並指定將其中一個邏輯卷的映射模式爲條帶映射,實現的步驟如下:
1、創建物理卷
創建物理卷的命令是 “pvcreate”,該命令可以將需要添加到卷組的分區或磁盤創建爲物理卷。操作如下:
# pvcreate /dev/sdb /dev/sdc /dev/sdd
Physical volume "/dev/sdb" successfully created
Physical volume "/dev/sdc" successfully created
Physical volume "/dev/sdd" successfully created
2、創建卷組
創建卷組的命令爲“vgcreate”,將使用“pvcreate”建立的物理卷創建爲一個完整的卷組,如下:
# vgcreate vgtest /dev/sdb /dev/sdc /dev/sdd
Volume group "vgtest" successfully created
其中vgcreate命令第一個參數是指定該卷組的名爲“vgtest”,該名稱可以根據需要隨便定義,後面接添加到該卷組的物理卷。同時在使用 vgcreate 在創建卷組時,還可以指定PE的大小,需要加上-s參數來實現,PE大小範圍爲8 KB 到 16GB,並且必須總是2的倍數。一個卷組裏面最多允許65534個PE存在。默認設置的PE大小爲4 MB,這表示卷組上創建的所有邏輯卷都以 4 MB 爲增量單位來進行擴充或縮減,所以4 MB 的PE決定了單個邏輯卷最大容量爲 256 GB,若要創建更大的邏輯卷則創建卷組時需要指定更大的PE。
3、創建邏輯卷
創建完卷組後,現在就可通過“lvcreate”命令來創建邏輯捲了,同時在創建邏輯卷的時候,還可以指定邏輯塊與物理塊映射的模式,邏輯卷的映射模式共有如下兩種:
· 線性模式――按照順序把一定範圍內的物理塊與邏輯塊映射,這也是默認的映射方式。例如,把邏輯卷中1-25的LE映射到PV1,把26-50的LE映射到PV2上。
· 條帶模式――將把邏輯塊以條帶的形式映射到不同的物理卷中,這種方式與前面講到的RAID 0有些類似,這種方式可以提高邏輯卷讀寫的性能。例如,將邏輯卷的LE 1映射爲PV1的PE1,LE 2映射爲PV2的PE1,LE 3映射爲PV3的PE1。
那麼創建邏輯卷的操作如下:
# lvcreate -i 3 -I 4 -L 180M -n lvtest1 vgtest
Logical volume "lvtest1" created
上面的提示信息表明成功創建了一個名爲“lvtest1”的邏輯卷,其命令中的幾個參數的說明如下:
· -i:採用條帶模式的映射方式創建邏輯卷,該參數的值用於指定所創建的邏輯卷將映射在幾個PV上。
· -I:指定使用條帶模式時所採用塊的大小,單位爲KB,其值必須是:2N(N≥2)。
· -L:指定創建邏輯卷的大小,單位的可以用K、M、G、T表示KB、MB、GB及TB。
· -n:用來指定所創建的邏輯卷名稱,該名稱可以根據需要隨便定義。
在使用“-i”參數指定PV的個數時,一定要確認所指定的這些PV是沒有完全被分配給任何邏輯卷的,否則將創建失敗,其次若這些PV的大小不等,那麼所創建的邏輯卷只能取最小值。
下面再使用剩餘的空間來創建第二個邏輯卷,通過“vgdisplay”命令可查看當前卷組剩餘的空間,如下:
# vgdisplay
— Volume group —
VG Name vgtest
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 11
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 0
Max PV 0
Cur PV 3
Act PV 3
VG Size 300.00 MB
PE Size 4.00 MB
Total PE 75
Alloc PE / Size 45 / 180.00 MB
Free PE / Size 30 / 120.00 MB
VG UUID 1Nbgxo-U4Ux-Y5Hb-TDzT-d5Fp-Iov7-wKFHG5
從如上的信息可瞭解到“vgtest”卷組還剩餘30個空閒的PE,那麼將這些空閒的空間全部劃分給另一個邏輯卷,操作如下:
# lvcreate -l 30 -n lvtest2 vgtest
Logical volume "lvtest2" created
其中“-l”用於指定邏輯卷的LE數量,默認爲4MB,所以此次創建的邏輯卷的大小是120M,該參數與“-L”效果一樣。
4、創建文件系統
在邏輯捲上創建文件系統和在分區上創建文件系統方法是一樣,例如,在邏輯捲上創建ext3格式的文件系統,命令如下:
# mkfs.ext3 /dev/vgtest/lvtest1
# mkfs.ext3 /dev/vgtest/lvtest2
以上就是在Linux下創建邏輯卷的整個步驟。