今天我們將了解怎樣來擴(kuò)展卷組,擴(kuò)展和縮減邏輯卷。在這里,我們可以縮減或者擴(kuò)展邏輯卷管理(LVM)中的分區(qū),LVM也可稱之為彈性卷文件系統(tǒng)。
前置需求使用LVM創(chuàng)建彈性磁盤存儲——第一部分
什么時候我們需要縮減卷?
或許我們需要創(chuàng)建一個獨(dú)立的分區(qū)用于其它用途,或者我們需要擴(kuò)展任何空間低的分區(qū)。遇到這種情況時,使用 LVM我們可以很容易地縮減大尺寸的分區(qū),以及擴(kuò)展空間低的分區(qū),只要按下面幾個簡易的步驟來即可。
我的服務(wù)器設(shè)置 —— 需求操作系統(tǒng) – 安裝有LVM的CentOS 6.5服務(wù)器IP – 192.168.0.200
如何擴(kuò)展卷組以及縮減邏輯卷
擴(kuò)展邏輯卷
目前,我們已經(jīng)有一個PV,VG和2個LV。讓我們用下面的命令來列出它們。
# pvs# vgs# lvs
邏輯卷擴(kuò)展
在物理卷和卷組中沒有空閑空間可用了,所以,現(xiàn)在我們不能擴(kuò)展邏輯卷的大小。要擴(kuò)展,我們需要添加一個物理卷(PV),然后通過擴(kuò)展vg來擴(kuò)展卷組,這樣我們就會得到足夠大的空間來擴(kuò)展邏輯卷大小了。所以,首先我們應(yīng)該去添加一個物理卷。
要添加一個新PV,我們必須使用fdisk來創(chuàng)建一個LVM分區(qū)。
# fdisk -cu /dev/sda
選擇n來創(chuàng)建新分區(qū)。選擇p來創(chuàng)建主分區(qū)。選擇我們需要創(chuàng)建的分區(qū)號。如果有其它可用磁盤,請按1。使用t來修改分區(qū)類型。輸入8e來將分區(qū)類型修改為Linux LVM。使用p來打印創(chuàng)建的分區(qū)(這里我們沒有使用該選項(xiàng))。按w寫入修改。
完成后重啟系統(tǒng)。
創(chuàng)建LVM分區(qū)
使用fdisk列出并檢查我們創(chuàng)建的分區(qū)。
# fdisk -l /dev/sda
驗(yàn)證LVM分區(qū)
接下來,使用下列命令來創(chuàng)建新PV(物理卷)。
# pvcreate /dev/sda1
使用下面的命令來驗(yàn)證pv。
# pvs
創(chuàng)建物理卷
擴(kuò)展卷組
添加該pv到vg_tecmint卷組來擴(kuò)展卷組的大小,以獲取更多空間來擴(kuò)展lv。
# vgextend vg_tecmint /dev/sda1
讓我們檢查現(xiàn)在正在使用的卷組的大小。
# vgs
擴(kuò)展卷組
我們甚至可以看到哪個PV用于創(chuàng)建使用中的特定卷組。
# pvscan
檢查卷組
這里,我們可以看到卷組所處的物理卷。我們已經(jīng)添加了一個pv,而且它完全空著。在擴(kuò)展邏輯卷之前,讓我們先看看我們所擁有的各個卷組的大小。
檢查所有邏輯卷
LogVol00用于Swap。LogVol01用于/?,F(xiàn)在我們有16.50GB大小的空間用于/(root)。當(dāng)前有4226物理擴(kuò)展(PE)可用。
現(xiàn)在,我們打算去擴(kuò)展/分區(qū)LogVol01。在擴(kuò)展后,我們可以像上面那樣列出它的大小以確認(rèn)。我們能可以使用GB或PE來擴(kuò)展,這一點(diǎn)我已經(jīng)在LVM第一部分解釋過了,這里我使用PE來擴(kuò)展。
要獲取可用的物理擴(kuò)展大小,運(yùn)行以下命令。
# vgdisplay
檢查可用的物理擴(kuò)展
總共有4607空閑PE可用,亦即有18GB空間空間可用。因此,我們可以將我們的邏輯卷擴(kuò)展到18GB這么大。讓我們使用PE大小來擴(kuò)展。
# lvextend -l +4607 /dev/vg_tecmint/LogVol01
使用+來添加更多空間。在擴(kuò)展后,我們需要改變文件系統(tǒng)大小,使用以下命令。
# resize2fs /dev/vg_tecmint/LogVol01
擴(kuò)展邏輯卷
用來使用物理擴(kuò)展擴(kuò)展邏輯卷的命令。這里我們可以看到它從16.51GB擴(kuò)展到了34GB。如果文件系統(tǒng)已被掛載并處于使用中,改變文件系統(tǒng)大小。要擴(kuò)展邏輯卷,我們不需要卸載文件系統(tǒng)
現(xiàn)在,讓我們看看當(dāng)前使用的改變大小后的邏輯卷。
# lvdisplay
改變邏輯卷大小
LogVol01用于擴(kuò)展的卷 /。擴(kuò)展后,從16.50GB上升到了34.50GB。C當(dāng)前擴(kuò)展,在擴(kuò)展前有4226,我們已經(jīng)添加了4607個擴(kuò)展,因此現(xiàn)在有8833。
現(xiàn)在,如果我們檢查可用的vg的話,空閑PE將會是0。
# vgdisplay
查看擴(kuò)展的結(jié)果。
# pvs# vgs# lvs
驗(yàn)證分區(qū)大小改變
添加的新物理卷。卷組vg_tecmint從17.51GB擴(kuò)展到了35.50GB。邏輯卷LogVol01從16.51GB擴(kuò)展到了34.50GB。
這里,我們已經(jīng)完成擴(kuò)展卷組和邏輯卷的過程。讓我們一起邁向邏輯卷管理中一些有趣的部分。
)
這里,我們將了解如何縮減邏輯卷。人人都說它很危險,在縮減lvm的時候可能會導(dǎo)致災(zāi)難。縮減lvm在邏輯卷管理中比其它部分要來得確實(shí)有趣得多。
在開始之前,備份好數(shù)據(jù)總是對的,這樣如果出錯,就不會頭痛了。要縮減邏輯卷,需要小心翼翼地完成5個步驟。在擴(kuò)展一個卷的時候,我們可以在該卷掛載時擴(kuò)展它(在線),但對于縮減,我們必須在縮減前卸載文件系統(tǒng)。
讓我們來了解一下下面這5個步驟。
卸載文件系統(tǒng)以便縮減。在卸載后檢查文件系統(tǒng)??s減文件系統(tǒng)。5減少當(dāng)前邏輯卷大小。再檢查文件系統(tǒng)以防出錯。將文件系統(tǒng)再次掛載回去。
為了演示,我已經(jīng)創(chuàng)建了獨(dú)立的卷組和邏輯卷。這里,我將縮減邏輯卷tecmintreducetest?,F(xiàn)在它有18GB大小,我們需要將它縮減到10GB而不丟失數(shù)據(jù)。也就是說,我們需要從18GB中減少8GB。卷中已經(jīng)有4GB被使用。
18GB ---> 10GB
在縮減大小的時候,我們只需要縮減8GB,所以在縮減后它總計(jì)會有10GB。
# lvs
縮減邏輯卷
這里,我們可以看到文件系統(tǒng)信息。
# df -h
檢查文件系統(tǒng)大小
卷大小是18GB。它已經(jīng)使用了3.9GB??捎每臻g是13GB。
首先,卸載掛載點(diǎn)。
# umount -v /mnt/tecmint_reduce_test/
卸載分區(qū)
然后,使用以下命令來檢查文件系統(tǒng)錯誤。
# e2fsck -ff /dev/vg_tecmint_extra/tecmint_reduce_test
掃描分區(qū)錯誤
注意:必須通過所有文件系統(tǒng)檢查的5個步驟,若未完全通過,則你的文件系統(tǒng)可能存在問題。
接下來,縮減文件系統(tǒng)。
# resize2fs /dev/vg_tecmint_extra/tecmint_reduce_test 8GB
縮減文件系統(tǒng)
使用GB來縮減邏輯卷。
# lvreduce -L -8G /dev/vg_tecmint_extra/tecmint_reduce_test
縮減邏輯分區(qū)
要使用PE來縮減邏輯卷,我們需要知道默認(rèn)PE大小和卷組的總PE大小,以進(jìn)行一次小小的計(jì)算來得出準(zhǔn)確的縮減大小。
# lvdisplay vg_tecmint_extra
這里,我們需要使用bc命令來做一些小計(jì)算來獲得10GB的PE大小。
1024MB x 10GB = 10240MB or 10GB10240MB / 4PE = 2048PE
按CTRL+D來退出BC。
計(jì)算PE大小
使用PE來縮減大小。
# lvreduce -l -2048 /dev/vg_tecmint_extra/tecmint_reduce_test
使用PE來縮減大小
將文件系統(tǒng)大小調(diào)整回去。在這一步中,如果發(fā)生任何錯誤,這就意味著我們已經(jīng)將文件系統(tǒng)搞亂了。
# resize2fs /dev/vg_tecmint_extra/tecmint_reduce_test
將文件系統(tǒng)掛載回同樣的掛載點(diǎn)。
# mount /dev/vg_tecmint_extra/tecmint_reduce_test /mnt/tecmint_reduce_test/
掛載文件系統(tǒng)
檢查分區(qū)和文件的大小。
# lvdisplay vg_tecmint_extra
這里,我們可以看到最后的結(jié)果,邏輯已經(jīng)被縮減到10GB。
在本文中,我們已經(jīng)了解了如何來擴(kuò)增卷組、邏輯卷以及縮減邏輯卷。在下一部分(第三部分)中,我們將了解如何為邏輯卷做快照并將它恢復(fù)到更早的狀態(tài)。謝謝閱讀,希望能幫到大家,請繼續(xù)關(guān)注腳本之家,我們會努力分享更多優(yōu)秀的文章。