====== Ubuntu 24.04 的 VM 擴增虛擬 HD 大小後的處理方式 ====== * 適用情境 : VM(如 QEMU/KVM)的磁碟 volume 擴充容量後,需要讓 OS 實際使用新增空間。 ===== 前置確認 ===== * # 確認磁碟實際大小 vs 分割表記錄的大小 sudo fdisk -l /dev/sda # 確認分割區與掛載架構 lsblk # 確認檔案系統使用量 df -h * **判斷重點:** - `fdisk` 出現 `GPT PMBR size mismatch` → 磁碟已擴容但分割表未更新 - `lsblk` 看到 LVM layer(`ubuntu--vg-ubuntu--lv`)→ 需走 LVM 擴容流程 ===== 擴充步驟 ===== * Step 1|擴展分割區 sudo growpart /dev/sda 3 # 數字 3 = 要擴展的分割區編號(依實際情況調整) * ✅ 成功訊息:`CHANGED: partition=3 ... new: size=XXXXXX` * Step 2|通知 LVM,PV 已變大 sudo pvresize /dev/sda3 * Step 3|擴展 Logical Volume sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv * `+100%FREE` 代表把 VG 內所有剩餘空間都加入 LV * Step 4|擴展檔案系統 # ext4(Ubuntu 預設) sudo resize2fs /dev/ubuntu-vg/ubuntu-lv # XFS sudo xfs_growfs / * Step 5|確認結果 df -h * 確認根目錄 `/` 的 Size 已反映新的磁碟大小。 ===== 注意事項 ===== | 項目 | 說明 | |------|------| | 停機需求 | ❌ 不需要,全程線上擴容 | | 資料風險 | 低,但建議操作前先做 snapshot | | 適用 FS | ext4、XFS | | 不適用情境 | 縮小分割區(需離線且風險高) | ===== 架構示意 ===== 實體磁碟 /dev/sda 120G └─ /dev/sda3 118G ← growpart 擴展 └─ LVM PV ← pvresize 更新 └─ ubuntu-vg └─ ubuntu-lv 116G ← lvextend 擴展 └─ / (ext4) ← resize2fs 擴展 ===== 參考網址 ===== * https://claude.ai/share/0c2ec45d-770d-497b-9424-27ed16554759 {{tag>lvm}}