我有一个在 VirtualBox 2.2.4 中运行的 Ubuntu 虚拟机,并且我在 8gb 虚拟磁盘上创建了它,但是这个磁盘太小了。
因此,我正在尝试增加磁盘的大小。到目前为止,我已经这样做了:
- 创建了一个新的更大的虚拟磁盘
- 将第二张磁盘添加到机器
- 使用 CloneZilla 将第一个磁盘克隆到第二个磁盘
- 删除第一个磁盘
- 从第二个(更大的磁盘)启动
但是现在我仍然停留在新的 100gb 虚拟磁盘上的 8gb 分区中。
从这里到拥有 100gb 分区的最简单路径是什么?:) 我了解到 GPart 可以调整分区大小,但它似乎不支持 LVM2 分区,而我的似乎是支持的。
谢谢
- 亚历克斯
答案1
一般来说,调整 LVM 卷大小的方法如下:
假设/mountpoint
处于 状态/dev/VolGroup00/mountpoint
。您可以通过查看/etc/fstab
或运行 来找到它mount -l
。
您可能还需要调整实际物理卷的大小,具体取决于您的设置。使用pvdisplay
看看它是否足够大,并在必要时使用pvresize
(类似于lvresize
下面)。
umount /mountpoint
lvresize -L +<HOW MUCH BIGGER> /dev/VolGroup00/mountpoint
e2fsck -f /dev/VolGroup00/mountpoint
resize2fs /dev/VolGroup00/mountpoint <TOTAL SIZE>
mount /mountpoint
这相当于卸载、调整底层 LVM 的大小,然后调整实际的 ext3 分区的大小。
需要注意以下几点:
答案2
我只是这样做了,并且遇到了和你同样的问题,但是我没有创建新的 LVM 并将其添加到卷组,而是出于强迫症的考虑,我想调整当前 LVM 的大小,从而以简单的名义保留一个分区。注意:如果可用空间没有紧跟您正在调整大小的分区,我不相信这有可能!
为此,您需要一个可以删除和创建分区表的工具。由于我使用 GPT,这意味着我需要磁盘分区。您还需要在卸载分区的情况下执行此操作,因此您可能需要启动到 Ubuntu LiveCD 并从那里运行它。
下列粗体步骤用于示例 LVM/dev/mms/root在设备上/dev/sda,我想扩展分区/dev/sda3占据我新发现的自由空间。
笔记:这些可能具有极大的破坏性,因此请确保您的输入是正确的!
- gdisk /dev/sda(确保输入正确的设备!)这将带您进入 gdisk,然后您可以按顺序执行以下步骤
- 页 -- 打印出你当前的分区信息(供参考)
- d -- 用于删除分区表
- 3 ——代表您要删除的分区表的设备编号(重要!)
- n -- 用于创建分区表
- 3- 代表您想要创建的分区表的设备编号(您可能希望使用与步骤 3 中删除的相同的设备编号)
- 页 - 打印出您当前的分区信息(再次参考,将其与您开始时的信息进行比较!)
- 瓦 ——将您的更改保存到磁盘(您确定吗?!)
- pvresize /dev/sda3-- 您可能需要在执行此操作之前重新启动,以便您的操作系统识别新的分区大小
- 光伏显示器- 打印出您当前的信息(它应该显示它现在正在使用全部空间!)
- lvresize -l +100%免费 /dev/mms/root-- 调整 LVM 大小以占据新空间的 100%
- e2fsck -f /dev/mms/root-- 执行完整性检查
- resize2fs -p /dev/mms/root-- 调整文件系统大小以占据整个 LVM
完成上述操作并重新启动到调整大小的操作系统后,一切都按预期工作,并且我可以使用所有额外的可用空间!
我用来弄清楚这一切的其他参考资料:
http://www.jethrocarr.com/2012/08/10/gdisk-oh-glorious-gdisk/ http://people.virginia.edu/~ll2bf/docs/quickref/lvm.html
答案3
我发现只有一种(且只有一种)方法可以做到这一点,而且我尝试了无数种方法。
首先,在 VirtualBox 中通过右键单击并转到“克隆”来克隆 ubuntu 客户虚拟机。克隆完成后,使用(在主机操作系统上)扩展克隆的 vdi
VBoxManage 修改“克隆的vdi名称”--调整“新根分区的大小(MB)”
然后 - 严格按照这篇文章中的步骤操作(他将 VMware 称为平台,但忽略了这一点)
http://blog.campodoro.org/?p=36
这将创建另一个大小与您添加的额外空间完全相同的 lvm,并将其附加到现有 lvm 的末尾。
一旦检查一切正常,您就可以删除原始虚拟机并提升您的克隆!
无需摆弄 fdisk,也不必担心删除或弄乱错误的分区。
在我找到这个解决方案之前,我肯定已经破坏了大约 4 个克隆的操作系统!
答案4
请注意,您实际上不需要使用 CloneZilla 之类的克隆工具,您可以在新虚拟磁盘上放置一个分区(可选),然后使用命令将其(或虚拟磁盘本身)初始化为 LVM pvcreate
。然后使用vgextend
将其添加到支持逻辑卷的卷组,然后使用vgreduce
从卷组中删除原始虚拟磁盘。这将执行迁移,并且可以在逻辑卷正在使用时实时完成,这就是存储虚拟化的魅力所在。完成后,您只需按上述方式扩展逻辑卷,这也可以使用比 ext3 更现代的文件系统实时完成。