LVM ( Logical Volume Manager ) 架構(gòu)采用分層結(jié)構(gòu),可以讓分區(qū)變得彈性,可以隨時隨地的擴(kuò)大和縮小分區(qū)大小。
目前成都創(chuàng)新互聯(lián)公司已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管運(yùn)營、企業(yè)網(wǎng)站設(shè)計(jì)、阿克塞哈薩克族自治網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
磁盤分區(qū)后使用 pvcreate 命令可以將分區(qū)創(chuàng)建為物理卷 PV。
將多個 PV 組合起來,使用 vgcreate 命令創(chuàng)建成卷組 VG。
VG 相當(dāng)于整合過的硬盤,LV 則相當(dāng)于分區(qū),使用 lvcreate 創(chuàng)建 lV。
如何創(chuàng)建 PV、VG、LV 及掛載目錄 ?
LVM(Logical Volume Manager)卷組管理器,通過對底層物理磁盤的封裝,可以將多塊物理磁盤組合成邏輯資源池,提供給上層應(yīng)用使用(如文件系統(tǒng)). LVM的好處是,可以跨物理硬盤為文件系統(tǒng)提供容量,并且可以動態(tài)進(jìn)行分區(qū)容量的調(diào)整,而不會損壞原有的文件系統(tǒng).
物理磁盤 :物理存儲介質(zhì),可以是整塊物理存儲或一個分區(qū).
物理卷PV(physical volume) :LVM要使用物理磁盤,在物理磁盤的頭部寫入lvm標(biāo)簽頭,就創(chuàng)建了一個PV,PV是組成VG的基本單元.
卷組VG(Volume Group) :VG相當(dāng)于非LVM系統(tǒng)中的物理硬盤,一個卷組VG由一個或多個PV組成,形成一個存儲資源池.
邏輯卷LV(logical volume) :LV相當(dāng)于非LVM系統(tǒng)中的硬盤分區(qū),LV建立在卷組VG之上,文件系統(tǒng)建立在LV之上.
物理塊PE(physical Extent) :創(chuàng)建LV時可以分配的最小存儲單元,大小可以指定,默認(rèn)為4MB
如上是從物理磁盤到lvm邏輯卷的創(chuàng)建過程及映射關(guān)系,lv01、lv02被創(chuàng)建后,通過device-mapper映射為邏輯塊設(shè)備(塊設(shè)備路徑/dev/vg01/lv01、/dev/vg01/lv02),供文件系統(tǒng)使用,通過mkfs.ext4 /dev/vg01/lv02可創(chuàng)建ext4文件系統(tǒng).
元數(shù)據(jù)主要是兩部分,PV header + metadata,位置一般是在PV的0~2048 sector中,從2048 sector開始是數(shù)據(jù)區(qū)域.
通過pvcreate創(chuàng)建pv時,會將pv header寫入物理磁盤,位置一般是在磁盤的第二個sector(512B/sector),lvm掃描磁盤時,通過pv header來識別PV.
pv header主要信息包括,pv uuid、元數(shù)據(jù)位置和metadata位置.
pv header實(shí)例:
metadata記錄的是vg和lv的配置信息,以ASCII碼的方式寫入metadata區(qū)域;vg和lv的每次配置變更,都會以追加的方式寫入metadata區(qū)域,并打上時間戳,該區(qū)域?qū)憹M后,新的變更記錄會覆蓋最早的一次記錄. 進(jìn)行vgscan時,猜測應(yīng)該是通過讀取最新一次的配置記錄,進(jìn)行激活.
vg配置信息,主要是包含的pv信息.
lv配置信息,主要是lv的起始位置和PE大小.
實(shí)例:
pvcreate /dev/vdb1
pvcreate /dev/vdb2
pvcreate /dev/vdb3
vgcreate /dev/vdb1 /dev/vdb2 /dev/vdb3
vgcreate wan /dev/vdb1 /dev/vdb2 /dev/vdb3
lvcreate -L 300M -n lv01 wan
將PV的前2048個sector通過dd拷貝出來,用cat查看如下.
假設(shè)我們有一塊磁盤 /dev/sdb1 作為應(yīng)用數(shù)據(jù)盤使用,以此為例創(chuàng)建lvm分區(qū)
先創(chuàng)建物理卷PV,命令: pvcreate /dev/sdb1
創(chuàng)建卷組VG,卷組命名為kylin,命令:vgcreate kylin /dev/sdb1
在VG中創(chuàng)建邏輯分區(qū)LV,命令:lvcreate -L 30G -n test kylin
創(chuàng)建邏輯分區(qū)后,進(jìn)行格式化,然后便可以掛載使用.
mkfs.ext4 /dev/kylin/test
mount /dev/kylin/test /data
假設(shè)我們在上述基礎(chǔ)上,又獲得一塊磁盤/dev/sdc1進(jìn)行擴(kuò)容,將磁盤容量增加到LV分區(qū)/dev/kylin/test中,具體操作如下.
先創(chuàng)建物理卷PV,命令: pvcreate /dev/sdc1
將/dev/sdc1添加進(jìn)VG kylin,命令:vgextend kylin /dev/sdc1
增加LV分區(qū)容量,命令:lvextend -L +30G /dev/kylin/test
lvm卷組配置備份
lvm的配置信息默認(rèn)在/etc/lvm/backup、/etc/lvm/archive/兩個目錄存在備份,當(dāng)lvm元數(shù)據(jù)損壞,lvm卷組讀取異常時,可通過備份文件進(jìn)行恢復(fù).
/etc/lvm/backup: 保留了當(dāng)前配置的備份
/etc/lvm/archive/:保留了每次配置更新前的備份
實(shí)例演示
邏輯卷/dev/wan/lv01
在/dev/wan/lv01上創(chuàng)建文件系統(tǒng)
掛載并創(chuàng)建文件
覆蓋/dev/vdb1、/dev/vdb2的lvm元數(shù)據(jù),并重啟系統(tǒng),vg已不能識別
通過pvcreate命令修復(fù)pv header 和metadata數(shù)據(jù).
激活邏輯卷
掛載/dev/wan/lv01成功,說明成功修復(fù)
如果LVM不再需要使用設(shè)備,則可以使用vgreduce命令從卷組中刪除物理卷,vgreduce命令通過刪除物理卷來縮小卷組的容量。參考vgreduce命令_Linux vgreduce命令使用詳解:從卷組中刪除物理卷。
如果仍在使用物理卷,則必須使用pvmove命令將數(shù)據(jù)傳輸?shù)搅硪粋€物理卷。數(shù)據(jù)移動后,可以將其從卷組中刪除。參考pvmove命令_Linux pvmove命令使用詳解:搬移PV中的資料。
1、將范圍移動到現(xiàn)有物理卷
使用pvs命令檢查是否使用了所需的物理卷(我們計(jì)劃在LVM中刪除“/dev/sdb1”磁盤):
# pvs -o+pv_used
?
如果使用此選項(xiàng),請檢查該卷組中其他物理卷上是否有足夠的自由范圍。
如果是這樣,可以在要刪除的設(shè)備上運(yùn)行pvmove命令,范圍將分發(fā)到其他設(shè)備:
# pvmove /dev/sdb1
/dev/sdb1: Moved: 2.0%
…
/dev/sdb1: Moved: 79.2%
…
/dev/sdb1: Moved: 100.0%
pvmove命令完成時,重新使用pvs命令檢查物理卷是否空閑:
# pvs -o+pv_used
?
請使用vgreduce命令從卷組中刪除物理卷/dev/sdb1:
# vgreduce myvg /dev/sdb1
Removed "/dev/sdb1" from volume group "myvg"
最后,運(yùn)行pvremove命令從LVM配置中刪除磁盤?,F(xiàn)在,該磁盤已從LVM中完全刪除,并可用于其他目的:
# pvremove /dev/sdb1
Labels on physical volume "/dev/sdb1" successfully wiped.
2、將范圍移動到新磁盤
如果您在卷組中的其他物理量上沒有足夠的自由范圍,使用以下步驟添加新的物理卷。
向存儲團(tuán)隊(duì)請求新的LUN,分配完這些后,運(yùn)行以下命令以發(fā)現(xiàn)Linux中新添加的LUN或磁盤:
# ls /sys/class/scsi_host
host0
# echo "- - -" /sys/class/scsi_host/host0/scan
# fdisk -l
在操作系統(tǒng)中檢測到磁盤后,請使用pvcreate命令創(chuàng)建物理卷:
# pvcreate /dev/sdd1
Physical volume "/dev/sdd1" successfully created
使用以下命令將新的物理卷/dev/sdd1添加到現(xiàn)有的卷組vg01:
# vgextend vg01 /dev/sdd1
Volume group "vg01" successfully extended
現(xiàn)在,使用pvs命令查看已添加的新磁盤“/dev/sdd1”:
# pvs -o+pv_used
?
使用pvmove命令將數(shù)據(jù)從/dev/sdb1移動到/dev/sdd1:
# pvmove /dev/sdb1 /dev/sdd1
/dev/sdb1: Moved: 10.0%
…
/dev/sdb1: Moved: 79.7%
…
/dev/sdb1: Moved: 100.0%
數(shù)據(jù)移至新磁盤后,重新使用pvs命令檢查物理卷是否空閑:
# pvs -o+pv_used
?
請使用vgreduce命令從卷組中刪除物理卷/dev/sdb1:
# vgreduce myvg /dev/sdb1
Removed "/dev/sdb1" from volume group "myvg"
最后,運(yùn)行pvremove命令從LVM配置中刪除磁盤。現(xiàn)在,該磁盤已從LVM中完全刪除,并可用于其他目的:
# pvremove /dev/sdb1
Labels on physical volume "/dev/sdb1" successfully wip
來自頂級大咖的解答:
邏輯卷管理(Logic Volume Manager),簡稱LVM,是動態(tài)磁盤分區(qū)管理技術(shù),目前已經(jīng)很少使用了,如果是學(xué)習(xí),大可不必浪費(fèi)時間掌握了。
1.PV(Physical Volume),物理卷,即物理磁盤分區(qū)。
2.VG(Volume Group),卷組,是所有物理卷PV組成的集合。
3.LV(Logic Volume),邏輯卷,是從卷組VG中劃分出來的存放數(shù)據(jù)的磁盤空間。
當(dāng)前名稱:linuxpv命令 linux vpu
鏈接分享:http://chinadenli.net/article40/ddgdjeo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、關(guān)鍵詞優(yōu)化、網(wǎng)頁設(shè)計(jì)公司、云服務(wù)器、動態(tài)網(wǎng)站、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)