我正在尝试将 vagrant box 的存储空间从 18 GB 增加到 50 GB。vagrant box 正在运行 Ubuntu,主机是 Windows 10。这个论坛上有类似的问题,用于扩展在 Mac 或 Ubuntu 主机上运行的 VM,但对于 Windows 主机,我没有。我完成了这篇博文中描述的步骤,其中涉及 1) 使用 clonehd 将机器的 .vmdk 文件转换为 .vmi 文件,2) 使用 modifyhd 调整磁盘大小 3) 将其转换回 .vmdk 文件 4) 附加新磁盘到虚拟机。
完成这些步骤后,VM Virtualbox Manager 显示磁盘具有 50 GB 的“虚拟”存储空间和 18 GB 的“实际”存储空间,如图所示。运行“df -h”显示的结果与我执行扩展存储的步骤之前完全相同(“/”中为 18 GB)。
据我了解,虚拟存储意味着存储空间应该随着数据的添加而扩展。但就我而言,当我尝试向其添加超过 18 GB 时,虚拟磁盘会抛出“空间不足”错误。我还能做些什么来将实际存储设置为 50 GB?我知道这可能涉及到在 Windows 主机上扩展分区,但我该怎么做呢?
从 HOST 和 Vagrant 的角度来看,您似乎做得对,但现在您需要在 Guest OS 中调整磁盘文件系统的大小,在本例中为 Ubuntu 根目录/分区。
默认情况下使用 ext4 文件系统,但要检查运行命令
然后运行命令将 Ext4 文件系统的大小调整为其最大大小(选择匹配的设备,例如 sda1 或您拥有的其他设备):
之后,运行命令:
并查看磁盘可用量。
如果您在安装过程中使用了 LVM
检查物理卷的大小和可用空间:
它会显示类似
在这种情况下,我们知道使用了 LVM 卷,第二个数字是 amount free。如果 PFree 为零,请检查磁盘布局,您可能需要首先调整磁盘分区的大小:
如果 PSize 不是您所期望的,第一步您需要将物理卷的大小调整到最大大小:
然后使用命令列出卷:
从列表中您应该选择根卷的名称,在本例中是
/dev/mapper/vagrant--vg-root
并执行 LV 调整大小命令:该
-r
开关应该告诉 LVM 自动调整不相关文件系统的大小。