#Linux Logical Volume Manager(LVM)是一種用於管理磁碟和儲存空間的工具,透過磁碟區組和邏輯磁碟區提供了靈活的儲存管理方式。 LVM的核心概念包括實體磁碟區、磁碟區組和邏輯磁碟區。
以下是一個可視化的LVM工作原理圖。假設有5個不同的磁碟,每個磁碟都有一個分割區映射到物理磁碟區(PV),這些磁碟被組合成一個磁碟區組(VG),該磁碟區組被分成兩個不同的邏輯磁碟區(LV),每個LV用於一個檔案系統。
圖片
假設在ubuntu系統上劃分了一個100GB空間的磁碟, 根據LVM原理,劃分層次如下:
安裝Ubuntu系統時,會出現一個螢幕提示,需要批准儲存佈局。預設情況下,儲存佈局將包括幾個小的開機分割區和第三個分割區,LVM將使用該分割區來建立根檔案系統。
圖片
圖片
#在Ubuntu預設情況下,根檔案系統所使用的磁碟空間不足總空間的一半。可以使用df -h指令來檢查根檔案系統的可用空間。
如圖所示,目前僅使用了約49GB儲存空間的14%,在實際使用中,這部分空間可能很快就會被佔滿。因此,現在的任務是擴展這個49GB的磁碟區。
要檢查磁碟區組上現有的可用空間(安裝程式預設設定留下的空間), 可以執行: vgdisplay指令檢查可用空間,如圖:
從上圖中可以看到, 大約還有49.25GB的空間可使用, 當然, 這裡的可用空間也可能會不夠, 在下面會講到。
要使用根邏輯磁碟區(LV)的磁碟區組(VG)上的可用空間, 可以先執行: lvdisplay指令檢查邏輯磁碟區大小, 然後執行:
lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
將LV擴充到可用的最大大小, 之後再次運行lvdisplay以確保其更改成功,如圖:
此時已經增加了根檔案系統所在的區塊卷的大小, 但仍然需要在其之上擴展文件系統, 運行df -h來檢查根文件系統, 然後運行命令:
resize2fs /dev/mapper/ubuntu — vg-ubuntu — lv
擴展檔案系統, 並再次運行df -h確認,如圖:
圖片
可以看到, 已經將系統預設留下的空間分配成功, 如果空間仍然不夠, 則需要擴展基礎磁碟來分配更多空間。
#假設擴展空間計劃是將現在的100GB擴展到200GB, 在實際應用中, 擴展的空間可能是虛擬機或RAID控制器或其它存儲系統, 首先執行:cfdisk命令檢查並查看是否列出了可用空間, 完成後使用q退出,如圖:
如果沒有看到列出的可用空間,可以使用:
echo 1>/sys/class/block/sda/device/rescan
啟動 /dev/sda 的重新掃描, 完成後, 重新運行cfdisk, 這時應該可以看到新的可用空間了,如圖:
從清單中選擇/dev/sda3分區,然後從底部選單中選擇」調整大小」。按下Enter鍵, 它會提示確認新大小, 再次按Enter鍵, 將看到/dev/sda3分割區擁有新的空間大小。
從底部選單中選擇”Write”, 輸入yes進行確認, 然後按Enter鍵, 輸入q退出程式。
現在/dev/sda3實體磁碟區(PV)的LVM分割區已經完成擴充, 接著需要擴充PV, 執行指令:
pvresize /dev/sda3
執行該操作, 然後使用pvdisplay檢查新大小,如圖:
圖片
現在可以看到, PV已從98.5GB增加到198.5GB, 再次使用vgdisplay檢查卷組(VG)的可用空間,如圖:
圖片
可以看到VG有100GB的可用空間, 繼續輸入指令:
lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
擴充LV以用完VG的所有可用空間, 然後執行lvdisplay指令確保變更成功,如圖:
圖片
此時根檔案系統的區塊磁碟區已完成擴充, 但檔案系統本身還沒有調整大小來適應新的磁碟區, 首先df -h檢查一下檔案系統的目前大小, 然後執行指令:
resize2fs /dev/mapper/ubuntu — vg-ubuntu — lv
調整大小, 並再次運行df -h檢查新檔案系統可用空間,如圖:
圖片
可以看到,已經成功擴展了物理磁碟,並將可用空間向上延續到LVM抽象層, 根檔案系統已經有足夠的空間使用。
以上是如何對Linux的預設LVM空間進行擴容的詳細內容。更多資訊請關注PHP中文網其他相關文章!