在 VMWARE 和 Windows 7 客户机中删除大文件夹需要很长时间

在 VMWARE 和 Windows 7 客户机中删除大文件夹需要很长时间

我在 VMWARE Workstation 7.1 中使用 Windows 7

当我尝试删除一个超过 400 MB 的大文件夹时,需要半个多小时。但是当我在主机(也是 Windows 7)上在 VMWARE 之外执行相同操作时,只需几分钟。

我曾尝试使用 SHIFT-Delete 跳过回收站,也尝试过发送到回收站,但结果都一样。

我很困惑为什么在 VMWARE 中花费的时间这么长,而在主机中只需要几分钟。

我可以理解如果它比在主机上多花 5 分钟,但它多花了 28 分钟!

还有人遇到过这种情况吗?除此之外,我的虚拟机运行良好,响应迅速,只有删除这样的大文件夹时才会花费很长时间。

有谁知道解决方法或修复方法吗?

截屏

编辑: 更多信息。如果我进入命令提示符并运行,它就会出现

del *.* /f /s /q

只需几分钟即可完成。那么为什么它比通过 Windows GUI 删除要快得多呢?

答案1

您正遭受随机访问时间缓慢的困扰。删除本质上是随机访问负载。不幸的是,除非您使用厚配置磁盘(这不是默认设置)构建虚拟机,否则每次读取或写入都需要由 VMware 转换为实际位置,因为虚拟机管理程序不会浪费时间在客户机上存储未使用的空间。

您可以通过对虚拟机进行碎片整理来获得稍微好一点的结果(注意:不要与 Windows 的碎片整理混淆,这是对 VMDK 格式本身的碎片整理),可以通过关闭虚拟机、在虚拟机属性中选择硬盘,然后选择工具->碎片整理来访问。

请注意,如果您的虚拟机有快照,则只有叶快照(即没有自己的快照的快照)会受到此影响。快照 VMDK 文件上的数据块实际上不会得到优化。

还要注意,如果您使用快照,您实际上可能强制 VMWare 在快照 VMDK 中分配更多部分,因为在这些情况下的删除实际上会导致复制新数据,因为快照系统在该场景中是写时复制环境。

总体而言,磁盘性能并不是使用虚拟机的一大优势 :(

相关内容