趙 麗
(黑龍江生態(tài)工程職業(yè)學(xué)院 計(jì)算機(jī)技術(shù)系,哈爾濱 150025)
由于linux系統(tǒng)的開(kāi)源性、穩(wěn)定性及安全性等優(yōu)點(diǎn),已有大部分用戶(hù)加入到linux使用者的陣營(yíng),但在安裝linux系統(tǒng)時(shí),通常會(huì)遇到硬盤(pán)空間的分派問(wèn)題,并且硬盤(pán)空間的擴(kuò)展及規(guī)劃通常需要在不停機(jī)狀態(tài)下完成,以上的這些情況,可采用LVM(邏輯卷管理器)來(lái)解決。
LVM(Logical Volume Manager,邏輯卷管理器)是一種把硬盤(pán)驅(qū)動(dòng)器空間分配成邏輯卷的方法,通過(guò)此種方式可使硬盤(pán)不必進(jìn)行分區(qū)操作也能被簡(jiǎn)單地重新劃分大小[1]。系統(tǒng)管理員可通過(guò)使用LVM方便地為應(yīng)用程序及用戶(hù)分配存儲(chǔ)空間,同時(shí)使用LVM可以按需改變邏輯卷的大小或添加移除邏輯卷。LVM的另一個(gè)優(yōu)點(diǎn)是可以為所管理的邏輯卷提供特定的命名標(biāo)識(shí)。LVM允許在機(jī)器的物理存儲(chǔ)資源之外創(chuàng)建邏輯卷,并且邏輯卷可以在系統(tǒng)處于運(yùn)行狀態(tài)時(shí)擴(kuò)充和縮減[2],此功能為L(zhǎng)inux系統(tǒng)管理員提供了相當(dāng)大的存儲(chǔ)器靈活性。綜上,使用LVM可靈活方便地對(duì)存儲(chǔ)系統(tǒng)進(jìn)行管理,并且可動(dòng)態(tài)進(jìn)行系統(tǒng)的擴(kuò)展。
物理卷(physicalvolume,PV):物理卷是LVM的基本存儲(chǔ)設(shè)備,它可以是硬盤(pán)分區(qū),也可以是已創(chuàng)建的物理分區(qū),甚至可以是整個(gè)硬盤(pán),包含LVM相關(guān)的管理參數(shù)是物理卷與普通物理存儲(chǔ)介質(zhì)的區(qū)別。
卷組(volumegroup,VG):卷組是存儲(chǔ)池,由一個(gè)或多個(gè)物理卷組成,在卷組上能創(chuàng)建一個(gè)或多個(gè)邏輯卷,即LVM分區(qū)。
邏輯卷(logicalvolume,LV):LVM的邏輯卷建立在卷組之上,類(lèi)似于非LVM系統(tǒng)中的硬盤(pán)分區(qū),它是一個(gè)標(biāo)準(zhǔn)的塊設(shè)備,在邏輯卷之上可以建立多種類(lèi)型的文件系統(tǒng)。
物理塊(physicalextent,PE):物理卷是LVM尋址的最小單元,它是以大小相等的物理塊作為存儲(chǔ)的基本單位的。
邏輯塊(logicalextent,LE):在同一個(gè)卷組中,LE的大小和PE的大小是相等的,并且存在一一對(duì)應(yīng)的映射關(guān)系。
LVM是建立在磁盤(pán)分區(qū)和文件系統(tǒng)之間的一個(gè)邏輯層,它可為文件系統(tǒng)屏蔽下層磁盤(pán)分區(qū)布局,提供一個(gè)邏輯的盤(pán)卷,再在盤(pán)卷上來(lái)建立文件系統(tǒng)[3]。LVM的結(jié)構(gòu)如圖1如示:
啟動(dòng)LVM需要?jiǎng)?chuàng)建分區(qū)、創(chuàng)建物理卷、激活卷組、創(chuàng)建邏輯卷及文件系統(tǒng),流程可見(jiàn)圖2,具體操作步驟如下:
(1)添加一塊磁盤(pán);
(2)分區(qū)并且將文件系統(tǒng)設(shè)定為L(zhǎng)VM類(lèi)型,需要注意LVM的分區(qū)類(lèi)型為8e;
(3)創(chuàng)建物理卷之前,要先執(zhí)行vgscan,即卷組掃描并生成邏輯卷所需的文件,之后再利用pvcreate命令創(chuàng)建相應(yīng)的物理卷,物理卷數(shù)量依具體情況而定;
(4)利用命令vgcreate創(chuàng)建卷組;
(5)利用命令lvcreate創(chuàng)建邏輯卷,可通過(guò)參數(shù)指定邏輯卷的大小;
(6)利用命令mkfs格式化新生成的邏輯卷并創(chuàng)建ext3文件系統(tǒng);
(7)利用命令mount將邏輯卷掛載到相應(yīng)目錄下。
隨著存儲(chǔ)信息的增加,卷組空間不足的情況便會(huì)出現(xiàn),解決這樣的問(wèn)題可以通過(guò)加入新的物理卷的方法來(lái)擴(kuò)大卷組容量。先使用pvcreate命令對(duì)待加入的設(shè)備進(jìn)行初始化,接下來(lái)使用vgextend命令進(jìn)行擴(kuò)容即可。
要從卷組中移除一個(gè)物理卷,首先要使用pvdisplay進(jìn)行查看,確認(rèn)邏輯卷沒(méi)有正在使用即將移除的物理卷,如果邏輯卷正在使用即將移除的物理卷,就需要將該物理卷的數(shù)據(jù)轉(zhuǎn)移到其他地方,然后再移除;如果物理卷處于空閑狀態(tài),使用vgreduce命令即可將物理卷從卷組中移除即可。
當(dāng)發(fā)現(xiàn)邏輯卷下的某個(gè)磁盤(pán)有錯(cuò)誤時(shí),或有更換大容量或更高速的物理設(shè)備等需求時(shí),可使用命令pvmove完成物理卷之間的數(shù)據(jù)轉(zhuǎn)移。在數(shù)據(jù)轉(zhuǎn)移前需要確保目標(biāo)卷的空間要大于待轉(zhuǎn)移卷的大小。
LVM可通過(guò)命令lvextent方便地調(diào)整邏輯卷的大小。邏輯卷擴(kuò)展操作后并不會(huì)馬上生效,需要使用命令resize2fs重新加載邏輯卷,但該命令只可用于ext2/ext3的文件系統(tǒng)的重新加載;刪除邏輯卷的命令是lvremove。
在進(jìn)行移除卷組的操作前要確認(rèn)該卷組中已經(jīng)沒(méi)有任何邏輯卷,亦可在操作前使用命令vgchange將卷組停止,移除卷組的命令為vgremove;在刪除物理卷的命令是pvremove,但在刪除操作執(zhí)行前必須確認(rèn)該物理卷已從卷組中移除了。
以上是LVM的術(shù)語(yǔ)、創(chuàng)建過(guò)程及管理方法,從下面的實(shí)例可以更好地理解LVM的使用方法。某公司的郵件服務(wù)器由于用戶(hù)數(shù)量增加,郵件存儲(chǔ)的硬盤(pán)空間需要擴(kuò)展,針對(duì)這樣的情況考慮使用動(dòng)態(tài)擴(kuò)容的方法解決這個(gè)問(wèn)題,計(jì)劃增加兩塊160G的SCSI硬盤(pán),將其掛載到“/mail”目錄下后使用LVM邏輯卷的方法進(jìn)行管理。解決此問(wèn)題的操作方法如下:
使用fdisk命令規(guī)劃兩個(gè)分區(qū),類(lèi)型設(shè)置為“8e”;使用pvcreate命令轉(zhuǎn)換上述分區(qū)為物理卷,操作如下:
[root@localhost ~]# fdisk -l /dev/sdb /dev/sdc| grep ″LVM″
/dev/sdb1 1 9660 77593918+ 8e Linux LVM
/dev/sdc1 1 9660 77593918+ 8e Linux LVM
[root@localhost ~]# pvcreate /dev/sdb1
Physical volume ″/dev/sdb1″ successfully created
[root@localhost ~]# pvcreate /dev/sdc1
Physical volume ″/dev/sdc1″ successfully created
使用vgcreate命令創(chuàng)建卷組mail_store,操作如下:
[root@localhost ~]# vgcreate ppp_vg /dev/sdb1 /dev/sdc1
Volume group ″ppp_vg″ successfully created
使用lvcreate命令創(chuàng)建邏輯卷 mail,然后使用mkfs命令創(chuàng)建ext3文件系統(tǒng),操作如下:
[root@localhost ~]# lvcreate -L 160G -n ppp_lv ppp_vg
/dev/cdrom: open failed: Read-only file system
Logical volume ″mail″ created
[root@localhost ~]# mkfs -t ext3 /dev/ppp_vg/ppp_lv
使用lvextend命令為邏輯卷 mail擴(kuò)充容量,然后使用resize2fs命令更新系統(tǒng)識(shí)別的文件系統(tǒng)大小,操作如下:
[root@localhost ~]# lvextend -L +10G /dev/mail_store/mail
[root@localhost ~]# resize2fs /dev/mail_store/mail
從以上操作可以看出,LVM在磁盤(pán)空間管理上是簡(jiǎn)單易行的,作為linux系統(tǒng)使用者應(yīng)深入進(jìn)行研究,本文只從應(yīng)用層面上進(jìn)行了描述,并通過(guò)實(shí)例說(shuō)明LVM的操作方法,實(shí)際上LVM還可以提供更高層次的磁盤(pán)存儲(chǔ)解決方案,使系統(tǒng)管理員可以更方便靈活地分配存儲(chǔ)空間。
參考文獻(xiàn):
[1]張進(jìn)奎,等.在Linux下如何不停機(jī)進(jìn)行磁盤(pán)空間的管理[J].中國(guó)科技信息,2005,(1).
[2]陳小暉.夢(mèng)工廠創(chuàng)造性地使用Linux LVM[J].開(kāi)放系統(tǒng)世界,2003,(11).
[3]李翔.Linux下邏輯盤(pán)卷管理詳解[J].開(kāi)放系統(tǒng)世界, 2003,(8).
黑龍江生態(tài)工程職業(yè)學(xué)院學(xué)報(bào)2012年2期