【摘要】硬盤空間伴隨著用戶的長(zhǎng)期使用和服務(wù)器的需求增大,難免會(huì)有空間不足的情況發(fā)生。做為管理人員,既要保證原有數(shù)據(jù)不受破壞,又要?jiǎng)討B(tài)增大或減少某些分區(qū)的容量。本文從Linux的LVM動(dòng)態(tài)擴(kuò)容和縮容兩方面探討方法和過(guò)程。
【關(guān)鍵詞】Linux,LVM,LV,動(dòng)態(tài)
1.引言
磁盤和文件系統(tǒng)的規(guī)劃、管理是系統(tǒng)管理員的重要工作之一。Linux的磁盤分區(qū)和文件系統(tǒng)在規(guī)劃階段就要求根據(jù)需求建立,但評(píng)估和分配的結(jié)果往往不能適應(yīng)后期容量的要求。利用Linux的LVM方案,可以比較從容地應(yīng)對(duì)磁盤空間動(dòng)態(tài)調(diào)整的需求。磁盤空間的調(diào)整有兩個(gè)相反的過(guò)程,一個(gè)是擴(kuò)容,一個(gè)是縮容。但/boot分區(qū)比較特殊,其中存放的是引導(dǎo)文件,不允許基于LVM創(chuàng)建。
2.LVM
LVM(LogicalVolumeManager)是指邏輯卷管理[1、2],它是建立在硬盤和分區(qū)之上,文件系統(tǒng)之下的一個(gè)邏輯層。一般過(guò)程是首先將普通分區(qū)或整個(gè)硬盤進(jìn)行物理卷(PV)的創(chuàng)建,然后在PV上建立卷組(VG),再在VG上劃分出邏輯卷(LV)。三者之間的關(guān)系(以兩塊物理盤為例)如圖1所示。
創(chuàng)建LV的基本步驟如下。
。1)使用fdisk工具創(chuàng)建分區(qū)并修改分區(qū)的類型為“8e”。
。2)創(chuàng)建PV#pvcreate設(shè)備名1[設(shè)備名2……]
#pvcreate/dev/sdb1/dev/sdc1
創(chuàng)建基于PV的VG,指定VG名稱。
創(chuàng)建基于VG的LV,指定LV的名稱及大小。
(5)創(chuàng)建后的LV,要掛載后才能使用。而掛載之前,要格式化邏輯卷。
掛載后的檢測(cè):
3.LV的動(dòng)態(tài)增容
LV建立在VG之上,對(duì)于已經(jīng)建立的LV,可以根據(jù)VG的大小動(dòng)態(tài)增容。動(dòng)態(tài)增容可以在線完成,不需要卸載設(shè)備、不需要停任何服務(wù),也不需要重啟系統(tǒng)。
增容的命令
。2)更新系統(tǒng)識(shí)別的文件系統(tǒng)大小。#resize2fs/dev/VG名/LV名
增容后需要更新文件系統(tǒng)的大小后才能查看到掛載點(diǎn)的容量變化。
4.LV的縮容
邏輯卷可增容同樣也可縮容,但應(yīng)在縮小LV之前首先縮小文件系統(tǒng),否則將可能導(dǎo)致數(shù)據(jù)丟失。與動(dòng)態(tài)增容不同,一般不建議對(duì)LV進(jìn)行容量的縮減,而且這種縮減并不支持動(dòng)態(tài)縮容。使用lvreduce命令不當(dāng)時(shí)容易造成現(xiàn)有數(shù)據(jù)的破壞,如果執(zhí)行過(guò)程中遇到一些錯(cuò)誤提示,則可能就需要重新格式化文件系統(tǒng)。
4.1進(jìn)行縮容之前
在進(jìn)行縮容之前,要明確的幾個(gè)問(wèn)題。
(1)縮容后的大小不能隨意指定,要至少滿足已經(jīng)使用空間的需求。
(2)resize2fs只能縮小umount的非在線文件系統(tǒng)。
。3)收縮LV有可能會(huì)刪除邏輯卷上已有的數(shù)據(jù),所以在操作前必須進(jìn)行確認(rèn)。
。4)與增容不同,縮容要求先縮小文件系統(tǒng)的大小,再縮小LV的大小。
4.2縮容基本步驟
。1)卸載掛載設(shè)備:#umount掛載設(shè)備名
指令:#umount/stu
(2)強(qiáng)制檢查文件系統(tǒng):#e2fsck-fLV名
指令:#e2fsck-f/dev/hzbgroup/stu
。3)調(diào)整文件系統(tǒng)的大小:#resize2fs/dev/VG名/LV名指定大小
指令:#resize2fs/dev/hzbgroup/stu4G
(4)縮減LV的大小
可以使用lvresize重新指定LV的大小。
命令格式是:
#lvresize-size指定大小/dev/VG名/LV名
//這里指定的大小要與resize2fs命令中的指定大小保持一致
#lvresize-size4G/dev/hzbgroup/stu
WARNING:Reducingactivelogicalvolumeto4.00GB……
Doyoureallywanttoreducestu?[y/n]:y//這里要確定(y)進(jìn)行縮減操作
Reducinglogicalvolumestuto4.00GB……
也可以使用lvreduce指令縮小LV指定大小的空間。
命令格式是:#lvreduce-L-大小/dev/VG名/LV名
縮容后的檢測(cè):需要重新掛載再檢測(cè)。
5.小結(jié)
LVM是Linux系統(tǒng)默認(rèn)的方式,它提高了磁盤管理的靈活性,使用起來(lái)很方便。LVM方式下的動(dòng)態(tài)增容是在線增加,縮容則是離線縮減。調(diào)整好LV的大小后,一般要求設(shè)置開(kāi)機(jī)后的自動(dòng)掛載,通過(guò)修改/etc/fstab文件可以實(shí)現(xiàn)。上例中,可添加一行:
參考文獻(xiàn)
[1]張勤,鮮學(xué)豐.Linux從初學(xué)到精通[M].電子工業(yè)出版社,2012.
[2]董良,寧方明.Linux系統(tǒng)管理[M].人民郵電出版社,2012.
[3]趙麗.基于LVM的磁盤空間管理[J].黑龍江生態(tài)工程職業(yè)學(xué)院學(xué)報(bào),2012(02).
轉(zhuǎn)載請(qǐng)注明來(lái)自:http://www.jinnzone.com/jisuanjiyingyonglw/32011.html