我正在關注這關聯。我錯過了“在安裝 Ubuntu 期間,分割區方法選擇引導 - 使用整個磁碟並設定 LVM...”。並達到 lvcreate 命令(手動安裝 HVM 來賓虛擬機),該命令給出錯誤:“卷組“vgubuntu”沒有足夠的可用空間(6 個擴展):需要 1024。”(作業系統是Ubuntu,我已經在Ubuntu StackExchange 站點)
現在有沒有一種方法(最終不需要格式化整個硬碟或需要 live cd 或 pendrive 等)來分配足夠的內存[我有 1 個 SSD,約 250GB,只有約 60GB 可用空間(沒有文件等) .)] ?
某些背景資訊:
sudo vgdisplay
--- Volume group ---
VG Name vgubuntu
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 237.97 GiB
PE Size 4.00 MiB
Total PE 60921
Alloc PE / Size 60915 / <237.95 GiB
Free PE / Size 6 / 24.00 MiB
sudo vgs
VG #PV #LV #SN Attr VSize VFree
vgubuntu 1 2 0 wz--n- 237.97g 24.00m
sudo pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 vgubuntu lvm2 a-- 237.97g 24.00m
sudo lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root vgubuntu -wi-ao---- <237.00g
swap_1 vgubuntu -wi-ao---- 976.00m
我用的是ext4。
問題:
這不是正確的做法嗎:
lvreduce --resizefs -L 212G vgubuntu/root
[首先嘗試縮小檔案系統(--resizefs 是救星!),如果成功,將現有根的大小減少到 212GB,以便「分配 PE / 大小 60915 / <237.95 GiB 」 變為「分配PE / 大小(新的PE)/ <212 GiB(約)"]lvcreate -L 8G -n ubuntu-hvm /dev/vgubuntu
[為 VolumeGroup vgubuntu 建立一個 8GB 的邏輯磁碟區]有沒有任何其他我可以在不卸載的情況下完成的方法(可能不是!)?
答案1
你的lvreduce
命令是正確的如果可以在線上縮小檔案系統。
不幸的是,ext4/ext3/ext2 檔案系統只能在線上擴充而不能減少。
在 Debian 上測試過,但即使如此最新e2fsprogs
源碼包的發行說明並不表示這已經改變了。
# lvcreate -L 8g -n lvtest vgsys
# mkfs.ext4 /dev/vgsys/lvtest
# mount /dev/vgsys/lvtest /mnt
# lvreduce --resizefs -L 4G /dev/vgsys/lvtest
Do you want to unmount "/mnt" ? [Y|n] n
fsadm: Cannot proceed with mounted filesystem "/mnt".
/sbin/fsadm failed: 1
Filesystem resize failed.
這個答案描述了一個避免重新啟動的過程,但它仍然需要轉換到tmpfs
基於臨時根檔案系統以縮小真正的根檔案系統。