1、背景描述 如上圖所示,根路徑“/”所在的文件系統已沒有可用的磁碟空間,需要擴容磁碟。 df -h 2、VirtualBox操作 2.1、查看當前虛擬磁碟的大小 如上圖所示,點擊打開選中的虛擬機的 Settings 界面。 如上圖所示,當前虛擬機的虛擬磁碟大小為 8GB 。 2.2、修改虛擬磁碟的 ...
1、背景描述
如上圖所示,根路徑“/”所在的文件系統已沒有可用的磁碟空間,需要擴容磁碟。
df -h
2、VirtualBox操作
2.1、查看當前虛擬磁碟的大小
如上圖所示,點擊打開選中的虛擬機的 Settings 界面。
如上圖所示,當前虛擬機的虛擬磁碟大小為 8GB 。
2.2、修改虛擬磁碟的大小
如上圖所示,點擊“File”->“Virtual Media Manager”,進入虛擬磁碟管理界面。
如上圖所示,選中虛擬機,即可修改該虛擬機的虛擬磁碟大小。
如上圖所示,本例將虛擬磁碟大小修改為 16GB 。
註意:需要先關閉虛擬機,才能修改虛擬磁碟的大小。
2.3、查看修改效果
如上圖所示,當前虛擬機的虛擬磁碟大小已被修改為 16GB 。
註意:雖然虛擬磁碟大小已被修改為 16GB ,但是在 CentOS 操作系統中還沒分配使用。
3、CentOS操作
3.1、磁碟分區階段
3.1.1、查看磁碟分區狀態
如上圖所示,磁碟 /dev/sda 有 16G 的大小,/dev/sda1 和 /dev/sda2 兩個分區一共只用了 8G ,因此還剩餘 8G 可用。
lsblk -p
3.1.2、創建新分區
fdisk /dev/sda
如上圖所示,輸入“n”,創建一個新分區(new)。
如上圖所示,輸入“p”,設置分區類型為主分區(primary)。
註意:一個磁碟最多可以分成四個分區,分區的類型有“主要分區”和“擴展分區”。
“擴展分區”最多只能有一個,一般建議將第四個分區設置為“擴展分區”,前三個分區設置為“主要分區”。
結合 3.1.1 節可知,目前已有 /dev/sda1 和 /dev/sda2 兩個分區,即將創建的是第三個分區,因此分區類型設置為主分區比較合適。
如上圖所示,輸入“3”,設置分區號。
如上圖所示,直接回車,使用預設的起始扇區。
如上圖所示,直接回車,使用預設的結束扇區。
如上圖所示,輸入“w”,保存退出。
提示:輸入順序為“n”->“p”->“3(或回車)”->“回車”->“回車”->“w”
註意:如果輸錯了,可以輸入“q”,不保存退出,重新再來一遍。
此外,有部分文章有修改 system id 為 8e 的步驟,這一步驟只是為了讓某些 LVM 檢測指令能檢測到這個分區,實際上省略這一操作也是可以的。
3.1.3、更新分區表信息
如上圖所示,使用 partprobe 命令可以更新分區表信息,讓系統識別到新創建的分區。
雖然使用 reboot 命令重啟系統也能更新分區表,讓系統識別到新創建的分區,但不推薦這樣操作。
partprobe -s
3.1.4、再次查看磁碟分區狀態
如上圖所示,新分區 /dev/sda3 已創建成功,大小為 8G 。
lsblk -p
3.2、PV物理捲階段
3.2.1、查看PV物理捲狀態
如上圖所示,目前只有基於 /dev/sda2 分區創建的物理捲,大小為 7G 。
pvdisplay
3.2.2、創建新PV物理捲
如上圖所示,將 /dev/sda3 新分區,創建為一個新的物理捲。
pvcreate 新分區名稱
3.2.3、再次查看PV物理捲狀態
如上圖所示,基於 /dev/sda3 分區,成功創建了一個新的物理捲。
pvdisplay
註意:此時 /dev/sda2 物理捲的 VG Name 的值為 centos ,表示該物理捲屬於名稱為 centos 的捲組。
而 /dev/sda3 物理捲的 VG Name 的值為空 ,表示該物理捲還不屬於任何捲組。
3.3、VG捲組階段
3.3.1、查看VG捲組狀態
如上圖所示,目前只有一個名稱為 centos 的捲組,大小為 7G 。
結合 3.2.3 節可知,該捲組只包括大小為 7G 的 /dev/sda2 物理捲。
vgdisplay
3.3.2、擴容VG捲組
如上圖所示,將新創建的 /dev/sda3 物理捲加入到 centos 捲組,從而完成 centos 捲組的擴容。
vgextend 捲組名稱 新物理捲名稱
註意:如果執行擴容VG的命令時,報錯“Couldn't create temporary archive name”;
說明磁碟已經一點空間都沒有了,需要先刪除(或轉移)一些不重要的文件(例如日誌文件之類)才能繼續。
3.3.3、再次查看VG捲組狀態
如上圖所示,centos 捲組已成功擴容為 15G 。
結合 3.2.3 節可知,該捲組包括了大小為 7G 的 /dev/sda2 物理捲,以及大小為 8G 的 /dev/sda3 物理捲。
3.4、LV邏輯捲階段
3.4.1、查看LV邏輯捲狀態
如上圖所示,要擴容的掛載點“/”所對應的文件系統為“/dev/mapper/centos-root”。
df -h
如上圖所示,文件系統“/dev/mapper/centos-root”所對應的邏輯捲路徑為“/dev/centos/root”。
該邏輯捲大小約為 6G ,且屬於 centos 捲組。
lvdisplay 文件系統名稱
註意:雖然邏輯捲的名稱為“root”,但是要對邏輯捲進行操作,需要使用邏輯捲的路徑“/dev/centos/root”。
邏輯捲路徑的格式為:/dev/捲組名稱/邏輯捲名稱
3.4.2、擴容邏輯捲
如上圖所示,將 centos 捲組擴容所得到的物理捲空間,分配給 /dev/centos/root 邏輯捲,從而完成 /dev/centos/root 邏輯捲的擴容。
lvextend 邏輯捲路徑 捲組擴容所得到的物理捲
3.4.3、再次查看LV邏輯捲狀態
如上圖所示, /dev/centos/root 邏輯捲已成功擴容多了 8G 。
lvdisplay 文件系統名稱
3.5、文件系統階段
3.5.1、查看文件系統狀態
如上圖所示,此時 /dev/centos/root 邏輯捲的擴容空間,還沒有同步到 /dev/mapper/centos-root 文件系統。
此外,可以看到 /dev/mapper/centos-root 文件系統的類型為 xfs ,因此可以使用 xfs_growfs 命令來完成文件系統的擴容。
df -hT
3.5.2、擴容文件系統
xfs_growfs 文件系統名稱
3.5.3、再次查看文件系統狀態
如上圖所示,要擴容的掛載點“/”所對應的文件系統“/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】
本文來自博客園,作者:Javaer1995,轉載請註明原文鏈接:https://www.cnblogs.com/Javaer1995/p/18246309