我在使用 Fedora24 Live CD 调整 LVM 大小时遇到问题。
这是输出图形显示:
[root@localhost liveuser]# vgdisplay
--- Volume group ---
VG Name fedora
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 349.95 GiB
PE Size 4.00 MiB
Total PE 89588
Alloc PE / Size 27585 / 107.75 GiB
Free PE / Size 62003 / 242.20 GiB
VG UUID db5n4Z-1C2C-KC2e-Xuek-uHGu-js9M-0gV3IY
这是输出视频播放:
[root@localhost liveuser]# pvdisplay
--- Physical volume ---
PV Name /dev/sda5
VG Name fedora
PV Size 349.96 GiB / not usable 2.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 89588
Free PE 62003
Allocated PE 27585
PV UUID eWJSCP-hMmO-JdNg-YNZl-L00h-N3Q8-aLmVpz
我想减少 Linux 磁盘空间,为 Windows 分区 (/dev/sda1) 提供可用空间。但是当我尝试这个命令时:
lvm pvresize -v --setphysicalvolumesize 209897472K /dev/sda5
...我得到这个输出:
Wiping internal VG cache
Wiping cache of LVM-capable devices
Archiving volume group "fedora" metadata (seqno 5).
/dev/sda5: Pretending size is 419794944 not 733908992 sectors.
Resizing volume "/dev/sda5" to 419794944 sectors.
Resizing physical volume /dev/sda5 from 0 to 51244 extents.
/dev/sda5: cannot resize to 51244 extents as later ones are allocated.
0 physical volume(s) resized / 1 physical volume(s) not resized
如何缩小我的 Linux 磁盘?
答案1
啊,答案就藏在留言里:
无法将大小调整为 51244 个扩展区,因为分配了较晚的扩展区
LVM 想说的是,即使您使用 107.75 GiB,并且希望将 PV 缩小到 209.9 GiB(这对于数据来说有足够的空间),文件系统本身分配的磁盘空间超出了 209.9 GiB 边界。
通过一个例子可能会更容易理解这一点。想象一下你的 PV 看起来像这样,其中X代表已用空间:
|------------------------------|
| x x x x x x x x | 349.96 GiB
|------------------------------|
当您尝试将 PV 大小调整为 209.0 GiB 时,您会要求执行以下操作:
|------------\ \------------------|
| x x x x x / 209.0 GiB /x x x |
|------------\ \------------------|
这就像用刀切一块黄油一样。正如您所看到的,一些已使用的空间位于第二部分。如果 LVM 允许您切你的PV像这样,你最终会得到一个损坏的文件系统;所以要感谢它说的不!
因此,您首先要做的是调整分区大小。这取决于文件系统类型,但 ext4、btrfs 等都有调整大小的工具。调整文件系统的大小将打包扩展,以便您可以获得干净的文件系统切当您调整 LVM 大小时。
.............| 209.9 Gib
|------------------------------|
|xxxxxxxx | 349.96 GiB
|------------------------------|