使用 growpart 在 Centos 上擴展 LVM
我正在嘗試增加我的 Centos VM 上的驅動器空間。我通過 virsh 添加了更多空間,並且可以在 lsblk 中看到。然後我執行了 growpart /dev/sda 2,它告訴我無法擴展該分區,因為它的大小是 2……….
執行之後,我現在在新分區下顯示另一個 LVM,它反映了我現有的 LVM。我的數字顯然沒有按照下圖相加,這似乎告訴我我的分區上的數據比可能的多!
對於如何在 sda2 下擴展我的 centos-root 253:0 以使用我剛剛添加的額外 100G 空間,我將不勝感激。
這只是如何
lsblk
顯示由多個部分組成的設備的工件。centos-root
LVM 邏輯卷的總大小為 150G,但要準確分析它的物理位置sda2
以及具體位置sda3
需要詳細研究 LVM 映射,顯然lsblk
沒有那麼深入地分析 LVM 結構。和 的目前大小的總和
centos-root
似乎是 199G,這正是 和 的目前大小centos-swap
的總和。centos-home``sda2``sda3
使用軟體 RAID0 或 RAID5 集您會看到相同的效果。使用
lsblk -s
首先顯示包含文件系統的結構,然後對它們組成的物理設備進行分解,這可能是一個有啟發性的替代視圖。您應該使用
growpart
orparted
來擴展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
步驟。最終結果在美學上比擴展現有分區稍微不那麼令人愉悅,但在性能上應該沒有可測量的差異。