我有一个非常具体的问题。我在虚拟机上的单个物理卷上运行了一个LVM。逻辑卷的大小约为150 to,我希望将其扩展到250 to。
我能够从虚拟机管理器中扩展物理卷,但是物理大小的变化没有反映在我的LVM逻辑卷上。
我没有直接找到任何答案,而且通过一些实验找到了解决办法。我想在下面的回答中分享一下。
发布于 2016-09-25 05:03:44
LVM图示例:
LVM的思想是将逻辑卷从物理卷中抽象出来,从而使多个物理卷在用户看来是一个连续的逻辑卷。
根文件系统在/dev/file-server-vg/root
中,交换在/dev/file-server-vg/swap
中。我们的想法是,我们实际上可以在PV层中有多个真正的硬盘,并且它们都可以添加到卷组中,这将允许它们作为一个连续文件系统出现在/dev/file-server-vg/root
的系统中。
在这个问题上,我一直使用/dev/file-server-vg/root
作为文件服务器,而且它的空间越来越少。幸运的是,这个系统位于虚拟机上,我能够使用虚拟机管理器扩展物理卷/dev/sda
。但是,大小的增加不会自动传递给/dev/file-server-vg/root
文件系统。我们需要做一些简单的命令才能让它正常工作。
在开始之前,请使用pvdisplay
查看存在哪些物理卷。这将列出它所属的所有物理卷和卷组。在这种情况下,我们只有一个物理卷,即/dev/sda3
。
--- Physical volume ---
PV Name /dev/sda3
VG Name file-server-vg
PV Size 155.26 GiB / not usable 0
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 65346
Free PE 0
Allocated PE 65346
PV UUID 0EXhc4-EoHZ-b79R-ncSe-SWXI-ztPe-Fsc7zk
可以使用sudo parted
和print
列出当前分区表。
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 boot
2 538MB 794MB 256MB ext2
3 794MB 167GB 166GB lvm
在本例中,我们希望将容量从155.56GiB扩展到255.56GiB。使用虚拟机管理器,我们通常可以扩展磁盘空间,在本例中,我们将将其扩展到100 will。
扩展成功后,得到的分区表(使用print free
)如下所示。请注意,“空闲空间”显示108 the (~100 the)。
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 boot
2 538MB 794MB 256MB ext2
3 794MB 275GB 166GB lvm
167GB 275GB 108GB Free Space
有两种方法可以扩展逻辑卷:创建一个新分区并将其添加到卷组中,或者增加相同的分区。
在我看来,在可能的情况下,第二种方法更简洁。当然,如果/dev/sda3
是物理硬盘,并且您购买了另一个硬盘来扩展空间,那么使用第一种方法是合乎逻辑的。
在分块类型中,resize 3 794MB 275GB
将调整分区3的大小,以占用所有空闲空间,好吧,几乎:
Number Start End Size File system Name Flags
17.4kB 1049kB 1031kB Free Space
1 1049kB 538MB 537MB fat32 boot
2 538MB 794MB 256MB ext2
3 794MB 275GB 274GB lvm
275GB 275GB 1032kB Free Space
这是足够好的,只有1MB没有被使用。
接下来,我们将重新启动机器。这是刷新分区表所必需的。
现在您将看到的是,随着pvdisplay
的使用,物理体积已经增大了。
--- Physical volume ---
PV Name /dev/sda3
VG Name file-server-vg
PV Size 255.26 GiB / not usable 0
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 65346
Free PE 0
Allocated PE 65346
PV UUID 0EXhc4-EoHZ-b79R-ncSe-SWXI-ztPe-Fsc7zk
这种大小的增加将自动传递给卷组,使用vgdisplay
,您将得到以下内容。请注意,vgextend
实际上并没有做您可能认为的事情。它不占用空闲空间,而是用于向特定卷组添加新的物理卷。
--- Volume group ---
VG Name file-server-vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 5
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 255.26 GiB
PE Size 4.00 MiB
Total PE 65346
Alloc PE / Size 65346 / 255.26 GiB
Free PE / Size 0 / 0
VG UUID NwwIgT-W0SH-aeTe-d078-hcxx-XZ6W-QfnSA0
逻辑卷不会自动增大。这实际上是有意义的,因为计算机不知道您想要增加哪个逻辑卷的大小,或者您可能想要创建一个新的逻辑卷,其中包含卷组中的额外空间。因此,使用lvdisplay
,您将看到下表,显示/dev/file-server-vg/root
只有153.26GiB,但不要担心,我们非常接近。
--- Logical volume ---
LV Path /dev/file-server-vg/root
LV Name root
VG Name file-server-vg
LV UUID l6qvYZ-AmYw-tdgi-2jUu-XNB2-gecQ-6fDPt8
LV Write Access read/write
LV Creation host, time file-server, 2014-07-10 14:54:58 +1000
LV Status available
# open 1
LV Size 153.26 GiB
Current LE 64834
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:0
--- Logical volume ---
LV Path /dev/file-server-vg/swap_1
LV Name swap_1
VG Name file-server-vg
LV UUID OohMkN-rGLa-fM4M-6he2-MbM9-BBc3-Ck2Hs5
LV Write Access read/write
LV Creation host, time file-server, 2014-07-10 14:54:58 +1000
LV Status available
# open 2
LV Size 2.00 GiB
Current LE 512
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:1
增加逻辑卷的方法是使用lvextend -L +100GB /dev/file-server-vg/root
之后,用resize2fs /dev/file-server-vg/root
扩展文件系统
你就完蛋了。您可以执行lvdisplay
检查/dev/file-server-vg/root
卷是否已扩展到253.26GiB
--- Logical volume ---
LV Path /dev/file-server-vg/root
LV Name root
VG Name file-server-vg
LV UUID l6qvYZ-AmYw-tdgi-2jUu-XNB2-gecQ-6fDPt8
LV Write Access read/write
LV Creation host, time file-server, 2014-07-10 14:54:58 +1000
LV Status available
# open 1
LV Size 253.26 GiB
Current LE 64834
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:0
--- Logical volume ---
LV Path /dev/file-server-vg/swap_1
LV Name swap_1
VG Name file-server-vg
LV UUID OohMkN-rGLa-fM4M-6he2-MbM9-BBc3-Ck2Hs5
LV Write Access read/write
LV Creation host, time file-server, 2014-07-10 14:54:58 +1000
LV Status available
# open 2
LV Size 2.00 GiB
Current LE 512
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:1
https://askubuntu.com/questions/829392
复制相似问题