我在 VMWARE Workstation 7.1 中使用 Windows 7
當我嘗試刪除一個超過 400 MB 的大資料夾時,需要花費半個多小時。但是,當我在 VMWARE 以外的主機(也是 Windows 7)上執行相同的操作時,只需要幾分鐘。
我嘗試過使用 SHIFT-Delete 跳過回收站,我嘗試發送到回收站,但它們都有相同的結果。
我很困惑為什麼在 VMWARE 中需要花費如此長的時間,而在主機中只需要幾分鐘。
我可以理解如果mabye比主機多花了5分鐘,但它多花了28分鐘!
有其他人經歷過這件事嗎?否則,我的虛擬機器運行良好並且響應速度非常快,只有在刪除像這樣的大資料夾時才需要很長時間。
有人知道解決方法或修復方法嗎?
編輯: 更多資訊。如果我進入命令提示字元並運行,就會出現
del *.* /f /s /q
只需幾分鐘即可完成。那麼為什麼它比透過 Windows GUI 刪除速度快得多呢?
答案1
您受到隨機訪問時間緩慢的影響。刪除本質上是隨機存取負載。不幸的是,除非您使用厚置備磁碟建立虛擬機器(這不是預設),否則每次讀取或寫入都需要由VMware 轉換到實際位置,因為管理程式不會浪費時間在來賓上儲存未使用的空間。
您可以透過對虛擬機器進行碎片整理來獲得稍好的結果(注意:不要與Windows 的碎片整理相混淆,這是VMDK 格式本身的碎片整理),可以透過關閉虛擬機器、在虛擬機器屬性中選擇硬碟來存取該碎片整理,並選擇“工具”->“碎片整理”。
請注意,如果您的虛擬機器有快照,則只有葉快照(即那些自己沒有快照的快照)才會受到這種方式的影響。快照 VMDK 檔案上的資料塊實際上不會得到最佳化。
另請注意,如果您使用快照,您實際上可能會強制 VMWare 在快照 VMDK 中分配更多部分,因為這些情況下的刪除實際上會導致複製新數據,因為快照系統是寫入時複製環境那個場景。
一般來說,磁碟效能並不是使用虛擬機器的主要優點:(