VirtualBox擴容CentOS-7虛擬機器磁碟

Javaer1995發表於2024-08-02

1、背景描述

image

如上圖所示,根路徑“/”所在的檔案系統已沒有可用的磁碟空間,需要擴容磁碟。

df -h

2、VirtualBox操作

2.1、檢視當前虛擬磁碟的大小

image

如上圖所示,點選開啟選中的虛擬機器的 Settings 介面。

image

如上圖所示,當前虛擬機器的虛擬磁碟大小為 8GB 。

2.2、修改虛擬磁碟的大小

image

如上圖所示,點選“File”->“Virtual Media Manager”,進入虛擬磁碟管理介面。

image

如上圖所示,選中虛擬機器,即可修改該虛擬機器的虛擬磁碟大小。
image

如上圖所示,本例將虛擬磁碟大小修改為 16GB 。

注意:需要先關閉虛擬機器,才能修改虛擬磁碟的大小。

2.3、檢視修改效果

image

如上圖所示,當前虛擬機器的虛擬磁碟大小已被修改為 16GB 。

注意:雖然虛擬磁碟大小已被修改為 16GB ,但是在 CentOS 作業系統中還沒分配使用。

3、CentOS操作

3.1、磁碟分割槽階段

3.1.1、檢視磁碟分割槽狀態

image

如上圖所示,磁碟 /dev/sda 有 16G 的大小,/dev/sda1 和 /dev/sda2 兩個分割槽一共只用了 8G ,因此還剩餘 8G 可用。

lsblk -p

3.1.2、建立新分割槽

image

fdisk /dev/sda

image

如上圖所示,輸入“n”,建立一個新分割槽(new)。

image

如上圖所示,輸入“p”,設定分割槽型別為主分割槽(primary)。

注意:一個磁碟最多可以分成四個分割槽,分割槽的型別有“主要分割槽”和“擴充套件分割槽”。
“擴充套件分割槽”最多隻能有一個,一般建議將第四個分割槽設定為“擴充套件分割槽”,前三個分割槽設定為“主要分割槽”。
結合 3.1.1 節可知,目前已有 /dev/sda1 和 /dev/sda2 兩個分割槽,即將建立的是第三個分割槽,因此分割槽型別設定為主分割槽比較合適。

image

如上圖所示,輸入“3”,設定分割槽號。

image

如上圖所示,直接回車,使用預設的起始扇區。

image

如上圖所示,直接回車,使用預設的結束扇區。

image

如上圖所示,輸入“w”,儲存退出。

提示:輸入順序為“n”->“p”->“3(或回車)”->“回車”->“回車”->“w”

注意:如果輸錯了,可以輸入“q”,不儲存退出,重新再來一遍。
此外,有部分文章有修改 system id 為 8e 的步驟,這一步驟只是為了讓某些 LVM 檢測指令能檢測到這個分割槽,實際上省略這一操作也是可以的。

3.1.3、更新分割槽表資訊

image

如上圖所示,使用 partprobe 命令可以更新分割槽表資訊,讓系統識別到新建立的分割槽。

雖然使用 reboot 命令重啟系統也能更新分割槽表,讓系統識別到新建立的分割槽,但不推薦這樣操作。

partprobe -s

3.1.4、再次檢視磁碟分割槽狀態

image

如上圖所示,新分割槽 /dev/sda3 已建立成功,大小為 8G 。

lsblk -p

3.2、PV物理卷階段

3.2.1、檢視PV物理卷狀態

image

如上圖所示,目前只有基於 /dev/sda2 分割槽建立的物理卷,大小為 7G 。

pvdisplay

3.2.2、建立新PV物理卷

image

如上圖所示,將 /dev/sda3 新分割槽,建立為一個新的物理卷。

pvcreate 新分割槽名稱

3.2.3、再次檢視PV物理卷狀態

image

如上圖所示,基於 /dev/sda3 分割槽,成功建立了一個新的物理卷。

pvdisplay

注意:此時 /dev/sda2 物理卷的 VG Name 的值為 centos ,表示該物理卷屬於名稱為 centos 的卷組。
而 /dev/sda3 物理卷的 VG Name 的值為空 ,表示該物理卷還不屬於任何卷組。

3.3、VG卷組階段

3.3.1、檢視VG卷組狀態

image

如上圖所示,目前只有一個名稱為 centos 的卷組,大小為 7G 。

結合 3.2.3 節可知,該卷組只包括大小為 7G 的 /dev/sda2 物理卷。

vgdisplay

3.3.2、擴容VG卷組

image

如上圖所示,將新建立的 /dev/sda3 物理卷加入到 centos 卷組,從而完成 centos 卷組的擴容。

vgextend 卷組名稱 新物理卷名稱

注意:如果執行擴容VG的命令時,報錯“Couldn't create temporary archive name”;
說明磁碟已經一點空間都沒有了,需要先刪除(或轉移)一些不重要的檔案(例如日誌檔案之類)才能繼續。
image

3.3.3、再次檢視VG卷組狀態

image

如上圖所示,centos 卷組已成功擴容為 15G 。

結合 3.2.3 節可知,該卷組包括了大小為 7G 的 /dev/sda2 物理卷,以及大小為 8G 的 /dev/sda3 物理卷。

3.4、LV邏輯卷階段

3.4.1、檢視LV邏輯卷狀態

image

如上圖所示,要擴容的掛載點“/”所對應的檔案系統為“/dev/mapper/centos-root”。

df -h

image

如上圖所示,檔案系統“/dev/mapper/centos-root”所對應的邏輯卷路徑為“/dev/centos/root”。

該邏輯卷大小約為 6G ,且屬於 centos 卷組。

lvdisplay 檔案系統名稱

注意:雖然邏輯卷的名稱為“root”,但是要對邏輯捲進行操作,需要使用邏輯卷的路徑“/dev/centos/root”。
邏輯卷路徑的格式為:/dev/卷組名稱/邏輯卷名稱

3.4.2、擴容邏輯卷

image

如上圖所示,將 centos 卷組擴容所得到的物理卷空間,分配給 /dev/centos/root 邏輯卷,從而完成 /dev/centos/root 邏輯卷的擴容。

lvextend 邏輯卷路徑 卷組擴容所得到的物理卷

3.4.3、再次檢視LV邏輯卷狀態

image

如上圖所示, /dev/centos/root 邏輯卷已成功擴容多了 8G 。

lvdisplay 檔案系統名稱

3.5、檔案系統階段

3.5.1、檢視檔案系統狀態

image

如上圖所示,此時 /dev/centos/root 邏輯卷的擴容空間,還沒有同步到 /dev/mapper/centos-root 檔案系統。

此外,可以看到 /dev/mapper/centos-root 檔案系統的型別為 xfs ,因此可以使用 xfs_growfs 命令來完成檔案系統的擴容。

df -hT

3.5.2、擴容檔案系統

image

xfs_growfs 檔案系統名稱

3.5.3、再次檢視檔案系統狀態

image

如上圖所示,要擴容的掛載點“/”所對應的檔案系統“/dev/mapper/centos-root”,已成功擴容了 8G 。

df -hT

本文參考

【1】【行萬路明於省】【VirtualBox擴容教程】【CSDN】【2022-10-26】

【2】【jianmuzi】【掛載點擴容-Linux-CentOS7】【部落格園】【2022-09-10】

【3】【A ?Charis】【使用LVM方式擴容磁碟報錯:Couldn‘t create temporary archive name.】【CSDN】【2023-10-11】

【4】【careybobo】【virtualbox 虛擬機器 如何擴容 /dev/mapper/centos-root】【CSDN】【 2024-02-06】

【5】【蠟筆小新兒】【VirtualBox和VMware虛擬機器centos(/dev/mapper/centos-root)磁碟擴容(親測有效)】【CSDN】【2020-05-31】

【6】【知其黑、受其白】【virtualbox 擴充套件動態磁碟 Centos7擴容】【CSDN】【 2023-03-17】

【7】【鳥哥】【7.3 磁碟的分割、格式化、檢驗與掛載】【鳥哥的 Linux 私房菜】【2017-09-04】

【8】【鳥哥】【14.3 邏輯捲軸管理員 (Logical Volume Manager)】【鳥哥的 Linux 私房菜】【2015-07-28】

【9】【鳥哥】【2.2 磁碟分割】【鳥哥的 Linux 私房菜】【2015-04-28】

相關文章