Centos

VirtualBox - 動態虛擬磁碟不會擴展

  • November 1, 2019

我正在我的 Windows 10 主機上使用 64 位 CentOS 7 VM,並且我有一個動態分配的 VHD,這給我帶來了問題。

起初,VHD 的最大大小設置為 16GB,功能上大約 14.4 可用。在做一個項目時,我意識到我需要更多空間,所以我使用 VBoxManage 將最大值增加到 100GB。然後我用 GParted 擴展了 sda2 分區,這樣就佔用了額外的空間。

所以 VirtualBox 認為 VHD 可以達到 100GB,而 sda2 佔據了大部分空間。現在 VHD 的實際大小仍然是 14.4GB。但是,當我填滿來賓作業系統上的所有這些空間時(通過將長序列寫入文件),驅動器不會自動擴展。

有幾點需要注意:

  1. 我第一次嘗試填滿空間,填滿後重新啟動虛擬機,我主機上的 VHD 文件確實增加了大約 1GB,但現在它不會再膨脹了。
  2. 我的客戶作業系統報告的設備與 GParted 報告的分區之間似乎存在差異。 CentOS列出 /dev/sda1 和 /dev/mapper/centos-root,它是 /dev/dm-0 的連結,而GParted列出 /dev/sda1 和 /dev/sda2。這可能是導致問題的原因,還是正常現象?如果它是正常的,關於為什麼 VirtualBox 不會擴展 VHD 的任何想法?

好的,我發現了問題所在。我的文件系統使用了我以前從未使用過的邏輯捲管理 (LVM),因此我不知道如何正確處理它。使用 LVM 術語,centos 是一個卷組:

數百

sda2 是該卷組中的物理卷:

sda2

root 是該卷組中的一個邏輯卷,以及交換:

根

centos VG 和 sda2 PV 已經註冊了我分配的額外儲存空間,但剩下的就是將多餘的空間分配給根 LV(21504 是我從 vgdisplay 獲得的空閒物理區(PE)的數量):

$ sudo lvextend /dev/centos/root /dev/sda2 -l+21504

然後擴展根文件系統,以便它可以利用這個額外的空間:

$ sudo xfs_growfs /dev/centos/root

在此之後,客戶作業系統認識到它有額外的空間,並填滿這個空間導致主機作業系統上的虛擬硬碟大小相應增長。成功!

來源: http ://www.techotopia.com/index.php/Adding_a_New_Disk_to_a_CentOS_6_Volume_Group_and_Logical_Volume

引用自:https://unix.stackexchange.com/questions/409278