resize - 为什么在 VirtualBox 中使用不同的虚拟机时,fdisk -l 对同一个 vdi 虚拟驱动器显示不同的结果
问题描述
VirtualBox(版本 5.2.24 r128163 (Qt5.6.2))用户在此处使用 xubuntu 来宾(Ubuntu 18.04.2 LTS)和 Windows 10 主机。
我最近尝试将我的 vdi 从 ~100GB 调整到 200GB。在 Windows 中,我使用了以下命令:
./VBoxManage modifyhd "D:\xub2\xub2.vdi" --resize 200000
一切顺利。然后我使用 gparted live cd 创建一个 vm,附加 vdi 并调整分区大小:
一切看起来都不错。如果我随后在 gparted vm 中使用“fdisk -l”命令,则增加的分区大小按预期可见。
fdisk -l 附加到 gparted vm 的 vdi 结果
如果我尝试使用“resize2fs /dev/sda5”为新调整大小的逻辑驱动器之一调整文件系统的大小,我被告知它已经有 46265856 个块长并且无事可做。
然而....
如果我然后将此 vdi 重新附加到 ubuntu vm 并使用 vdi 启动,“fdisk -l”命令会给出不同的结果,并且基本上告诉我驱动器的大小仍然是 100GB。
附加到 ubuntu vm 的相同 vdi 的 fdisk -l 结果
'df' 命令确认它没有调整大小。
如果我尝试命令“resize2fs /dev/sda5”,我会得到结果:
The filesystem is already 22003712 (4k) blocks long. Nothing to do!
我该如何解决这个问题并让 ubuntu vm 看到磁盘和分区的大小已经增加?
解决方案
行。我会回答我自己的问题(感谢您对匿名互联网的负面投票)。
当您尝试扩展与 VirtualBox VM 关联的驱动器的现有快照时,会出现此问题。
我发现这在 VirtualBox 的文档中有所描述。
https://forums.virtualbox.org/viewtopic.php?f=35&t=50661
一个建议的解决方案是删除快照,但是当我尝试这样做时收到一条错误消息。
对我有用的解决方案是克隆我的虚拟机。克隆的 VM(没有与之关联的任何快照)按预期运行,并显示调整后磁盘的正确大小。
需要明确的是:我上面描述的情况是 100% 正确的。
希望对某人有所帮助。
推荐阅读
- python - 验证字符串的问题
- python - 在 Django Admin 中使用 TabularInline
- entity-framework-core - 快速入门错误 - 对本地 SQL Server 使用 EF 迁移并不断丢失数据库连接
- ios - PWA URL/工具栏体验不一致。无法在 Apple 设备上删除
- c# - 多次调用 Api C#
- windows - 找不到过程入口点 _o__configure_narrow_argv
- python - 无法使用 brew install python@2 安装 python2
- reactjs - React中的CRUD,使用useState更新项目不起作用
- centos - 主机重启后容器中的循环设备设置(losetup、mount 等)立即失败
- python - 请求在我的 DJANGO 项目之一中不起作用