Centos7 利用LVM實(shí)現(xiàn)動(dòng)態(tài)擴(kuò)容的方法
摘要:最近項(xiàng)目組里來(lái)了很多新人,對(duì)linux分區(qū)及各種應(yīng)用使用的分區(qū)不了解,導(dǎo)致測(cè)試數(shù)據(jù)庫(kù)時(shí)突然發(fā)現(xiàn)某一個(gè)分區(qū)被寫滿了,不得不重裝OS.實(shí)在看不下去了,特此分享我的一些利用LVM實(shí)現(xiàn)動(dòng)態(tài)擴(kuò)容的心得,希望對(duì)大家有幫助。
知識(shí)儲(chǔ)備:
LVM是邏輯盤卷管理(Logical VolumeManager)的簡(jiǎn)稱,它是Linux環(huán)境下對(duì)磁盤分區(qū)進(jìn)行管理的一種機(jī)制,LVM是建立在硬盤和分區(qū)之上的一個(gè)邏輯層,來(lái)提高磁盤分區(qū)管理的靈活性。通過(guò)LVM系統(tǒng)管理員可以輕松管理磁盤分區(qū),如:將若干個(gè)磁盤分區(qū)連接為一個(gè)整塊的卷組(volumegroup),形成一個(gè)存儲(chǔ)池。管理員可以在卷組上隨意創(chuàng)建邏輯卷組(logicalvolumes),并進(jìn)一步在邏輯卷組上創(chuàng)建文件系統(tǒng)。管理員通過(guò)LVM可以方便的調(diào)整存儲(chǔ)卷組的大小,并且可以對(duì)磁盤存儲(chǔ)按照組的方式進(jìn)行命名、管理和分配
LVM模型如下圖:

1.安裝OS時(shí),選擇手動(dòng)分區(qū),Device Type選擇LVM。Mysql/Mariadb數(shù)據(jù)存放在 /var,oracle數(shù)據(jù)存放在 /home,所以在手動(dòng)分區(qū)時(shí)請(qǐng)根據(jù)實(shí)際磁盤大小,對(duì)這兩個(gè)應(yīng)用有針對(duì)性的將 /var、/home分的更大。下面分區(qū)情況僅作演示用:

2.安裝完OS后進(jìn)入系統(tǒng),查看分區(qū),可以看到裝系統(tǒng)時(shí)采用LVM的三個(gè)分區(qū):/、 /home、/var

3.安裝os時(shí)忘記創(chuàng)建root賬戶了,不過(guò)沒(méi)關(guān)系,執(zhí)行‘sudosu root ',再輸入目前登陸用戶密碼即可獲取部分root權(quán)限

4.查看卷組名稱及卷組使用情況 vgdisplay

5.查看當(dāng)前邏輯卷的空間狀態(tài),如下圖:/ 50G、/var 200G、/home 100G、swap 20G


6.現(xiàn)在感覺(jué)/home 100G不夠用,想擴(kuò)容至120G,新插入一塊20G硬盤;用‘fdisk -l'查看

7.格式化分區(qū)操作‘fsdisk/dev/sdb'

8.把新加的磁盤設(shè)置為L(zhǎng)VM模式

確認(rèn)分區(qū)

9.將新加的分區(qū)/dev/sdb1創(chuàng)建為物理卷

10.給卷組‘cl'擴(kuò)容,將物理卷/dev/sdb1擴(kuò)展至‘cl'卷組

此時(shí)卷組‘cl'有20G空余空間,及/dev/sdb1,將其全部擴(kuò)展至/home

11.此時(shí)20G磁盤雖已擴(kuò)展至 /home,但并沒(méi)寫入文件系統(tǒng);進(jìn)入/etc/fstab確認(rèn) /home文件系統(tǒng)--->ext4

12.寫入文件系統(tǒng),使擴(kuò)容生效

13.如果是xfs文件系統(tǒng),則用‘xfs_growfs /dev/mapper/cl-home';查看/home,已實(shí)現(xiàn)擴(kuò)容。大功告成!

本次擴(kuò)容指令匯總:
1.創(chuàng)建分區(qū) #fdisk /dev/sdb
2.創(chuàng)建物理卷 #pvcreat /dev/sdb1
3.查看卷組名稱及使用情況 #vgdisplay
4.將物理卷擴(kuò)展到卷組 #vgextend cl /dev/sdb1 (此處‘cl'是卷組名稱)
5.將卷組中空閑空間擴(kuò)展到 /home #lvextend -l +100%FREE /dev/mapper/cl-home
6.刷新文件系統(tǒng)是擴(kuò)容生效 #resize2fs /dev/mapper/cl-home
使用reiserfs 文件系統(tǒng)代替ext2/ext3 #resize_reiserfs /dev/mapper/cl-home
Centos7 默認(rèn)文件系統(tǒng)是 ‘xfs',我分區(qū)時(shí)選的是‘ext4'
項(xiàng)目實(shí)戰(zhàn):
MPX跑磁盤將 /寫滿,導(dǎo)致GUI進(jìn)不去,用此法給 /動(dòng)態(tài)擴(kuò)容,GUI又回來(lái)了,哈哈哈
擴(kuò)容前

擴(kuò)容后

GUI又回來(lái)了

另附個(gè)人對(duì)Linux分區(qū)的一些認(rèn)識(shí):
在linux里一切皆文件,所有設(shè)備、磁盤都是以文件形式掛在 ‘ / '。本文中提到的 /var ,如果安裝os時(shí)不手動(dòng)對(duì) /var 分區(qū),系統(tǒng)默認(rèn)會(huì)創(chuàng)建 /var ,但是系統(tǒng)創(chuàng)建的 /var ,最大可用存儲(chǔ)空間為‘ / '的大小。另外,像 /boot 或 /boot/efi 里只存放linux os的引導(dǎo)文件,沒(méi)必要分的太大。
總結(jié):安裝os時(shí)選擇LVM,當(dāng)跑數(shù)據(jù)庫(kù)發(fā)現(xiàn)分區(qū)不夠用時(shí),即可按此法實(shí)現(xiàn)動(dòng)態(tài)擴(kuò)容,而不破壞分區(qū)內(nèi)原有文件,更不用重裝系統(tǒng),媽媽再也不用擔(dān)心我分區(qū)大小夠用了!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Linux服務(wù)器上使用docker的簡(jiǎn)單教程
這篇文章主要為大家詳細(xì)介紹了Linux服務(wù)器上使用docker的簡(jiǎn)單教程,文中的示例代碼簡(jiǎn)潔易懂,有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-03-03

