Centos

使用 growpart 在 Centos 上擴展 LVM

  • September 15, 2021

我正在嘗試增加我的 Centos VM 上的驅動器空間。我通過 virsh 添加了更多空間,並且可以在 lsblk 中看到。然後我執行了 growpart /dev/sda 2,它告訴我無法擴展該分區,因為它的大小是 2……….

執行之後,我現在在新分區下顯示另一個 LVM,它反映了我現有的 LVM。我的數字顯然沒有按照下圖相加,這似乎告訴我我的分區上的數據比可能的多!

對於如何在 sda2 下擴展我的 centos-root 253:0 以使用我剛剛添加的額外 100G 空間,我將不勝感激。

在此處輸入圖像描述

在此處輸入圖像描述

這只是如何lsblk顯示由多個部分組成的設備的工件。 centos-rootLVM 邏輯卷的總大小為 150G,但要準確分析它的物理位置sda2以及具體位置sda3需要詳細研究 LVM 映射,顯然lsblk沒有那麼深入地分析 LVM 結構。

和 的目前大小的總和centos-root似乎是 199G,這正是 和 的目前大小centos-swap的總和。centos-home``sda2``sda3

使用軟體 RAID0 或 RAID5 集您會看到相同的效果。使用lsblk -s首先顯示包含文件系統的結構,然後對它們組成的物理設備進行分解,這可能是一個有啟發性的替代視圖。

您應該使用growpartorparted來擴展sda3,因為這是物理上位於可用空間旁邊的分區。在較舊的 RHEL/CentOS 版本上,您可能需要partprobe /dev/sda3告訴核心重新檢測分區大小,但現代分區大小工具應該會自動為您處理。

下一步是pvresize /dev/sda3自動擴展 LVM PV 以匹配其所在分區的新大小。這將為您提供 LVM 卷組中的可用空間(可使用lvs或進行查看vgdisplay),然後您可以使用它來擴展現有邏輯卷或創建新卷。

例如,要將 20G 的新增空間添加到您的/home文件系統,您可以執行以下操作:

lvextend -r -L +20G /dev/mapper/centos-home

使用該-r選項(在 CentOS 7 和更新版本中可用)文件系統將使用 LV 自動調整大小。

(由於您的/boot文件系統似乎是 XFS,我想我不需要擔心 CentOS 6.x 和更早版本。)


如果您對調整現有分區(老派)感到不安,您還可以使用新空間創建一個新分區/dev/sda4(使用parted或類似),將其類型/標誌設置為lvm,然後將其初始化以供 LVM 使用並將其添加到您的現有centos捲組:

pvcreate /dev/sda4
vgextend centos /dev/sda4

在這之後將是上述lvextend步驟。

最終結果在美學上比擴展現有分區稍微不那麼令人愉悅,但在性能上應該沒有可測量的差異。

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