如何在VMware Player虚拟磁盘中扩展ext4主分区的大小?

我有一个在VMware Player上设置的虚拟机,作为客户操作系统运行Ubuntu 10.04。
该虚拟机是在一个20GB的虚拟驱动器上创建的,只有一个分区用于工作空间。最后,我需要扩展虚拟驱动器的大小。通过VMware Player菜单轻松地调整驱动器大小,并增加了大约10GB。现在,我需要调整主分区的大小(相对于创建一个独立分区并挂载它,我更愿意这样做)。
根据GParted显示,我现在有以下分区:

enter image description here

我的问题是,如何增加文件系统分区的大小以包含免费的10GB? 从我在网上找到的信息来看,一个限制是交换分区紧邻文件系统,因此我的理解是首先要将该分区移动到卷的末尾。这怎么做呢?
此外,一些来源建议系统应该从LiveCD启动,这样文件系统就不是引导分区,从而更容易调整大小。如上所述,我运行的是虚拟机,所以我不确定如何从LiveCD启动它。有什么想法吗?

你告诉VMware从光盘镜像启动,就像你第一次在其中安装Ubuntu时所做的那样。 - psusi
@psusi - 谢谢。虚拟机是使用VMware Player运行的,而不是VMware,所以我不确定在哪里告诉它从CD启动。另外,显然,我需要从CD启动当前正在工作的虚拟机。我记得唯一一次指向ISO文件是在创建虚拟机时,那里一切都是自动完成的。 - ysap
1个回答

我刚刚就是在一分钟前做了这件事。你想要做的是:

  1. 在虚拟机的设置中将 CD 驱动器指向带有 Ubuntu LiveCD 的 .iso 文件。您可能还需要确保"开机连接"复选框已选中。
  2. 打开虚拟机并在虚拟机内部按 F2 键。
  3. 进入 BIOS 后,移动到启动选项卡,并选择 CD-ROM 作为主要启动设备。
  4. 运行 gParted - 我认为它一直都在那里。
  5. 销毁交换分区:关闭交换分区,删除扩展和 Linux 交换分区。
  6. 将主分区调整为所需的大小。
  7. 再次分配您喜欢的交换分区 - 创建一个扩展分区,然后分配为 Linux 交换分区。不要忘记使用 swapon :)

就是这样。现在您有一个大的主分区了!

以我的情况为例,你需要有绝地反应才能通过按下闪屏界面上的 F2 进入 BIOS - 启动延迟时间太短了。您可以做的是去您虚拟机的 .vmx 文件中输入合理的内容,例如:

bios.bootDelay = "5000"

每次开机延迟5秒。

谢谢,到这个时候,我已经在交换分区之后添加了一个分区。然后我将该文件系统挂载到我的主文件系统中,并继续正常操作。不过,你的回答下次我需要增加驱动器大小时可能会很有价值 :-) - ysap
非常好。至少在Fusion 6中,不允许使用引号。请使用:bios.bootDelay = 5000 - Brent Faust
非常感谢你提供的BIOS延迟选项。你真的帮我节省了很多时间 :) - Roman Badiornyi
3这个方法完美地起作用了。你也可以使用bios.forceSetupOnce="TRUE"作为bios.BootDelay的替代方法。详细信息请参考:http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1004129 - OscarRyz
1这对我非常有帮助,但我想补充一点,我需要进入虚拟机的设置 > CD/DVD,并勾选“开机时连接”选项。我使用的是VMWare Player 7.0.0版本。 - Chuck Claunch