修复 Fusion 中的稀疏虚拟磁盘
search cancel

修复 Fusion 中的稀疏虚拟磁盘

book

Article ID: 301420

calendar_today

Updated On:

Products

VMware Desktop Hypervisor

Issue/Introduction

本文介绍了修复稀疏虚拟磁盘的步骤。无法修复预分配的虚拟磁盘。要确定您拥有的是稀疏磁盘还是预分配磁盘,请参见 Making a Fusion virtual disk pre-allocated or sparse (1021565)

注意:并非所有损坏的虚拟磁盘都可修复。断电、强制退出 Fusion 和关闭 Mac 电源(而不是关闭)都可能对虚拟机造成不可修复的损坏。物理硬盘上的坏扇区或故障的硬盘驱动器也会由于损坏虚拟磁盘而对虚拟机造成损坏。

Symptoms:
免责声明:本文为 Repairing a sparse virtual disk in Fusion (1023888) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。


  • 在强制关闭 Mac 后,虚拟机无法启动。
  • 虚拟机在崩溃后不启动。
  • 启动虚拟机时,显示以下错误:

    对文件的操作失败。如果此文件位于远程文件系统上,请确保网络连接和此磁盘所在的服务器均运行正常 (Operation on file failed. please make sure your network connection and the server where this disk resides are functioning properly)。

  • 启动虚拟机时,显示以下错误:

    无法打开磁盘“path_to_virtual_machine /virtual_disk.vmdk”或其所依赖的快照磁盘之一。原因: 指定的虚拟磁盘需要进行修复 (Cannot open the disk 'path_to_virtual_machine /virtual_disk.vmdk' or one of the snapshot disks it depends on.Reason: The specified virtual disk needs repair)。

  • 尝试使用 VMDKMounter 挂载虚拟磁盘时,显示以下错误:

    尝试挂载虚拟磁盘时出现问题 (There is a problem trying to mount the virtual disk)。

  • 尝试使用 vmware-vdiskmanager 修复虚拟磁盘时,显示以下错误:

    虚拟磁盘已损坏,但修复过程以失败 (The virtual disk is corrupted but the repair process has failed)。

  • 启动虚拟机时,显示以下错误:

    “无法删除快照”虚拟磁盘需要进行修复 ("Unable to delete snapshot" virtual disk needs repair)


Environment

VMware Fusion 5.x
VMware Fusion 4.x
VMware Fusion 6.x
VMware Fusion Pro 8.x
VMware Fusion 7.x
VMware Fusion 1.x
VMware Fusion 2.x
VMware Fusion 8.x
VMware Fusion 3.x

Resolution

要修复虚拟磁盘,请执行以下操作:

注意:如果使用的是 Fusion 3.1.0,必须获取正确的实用程序版本,然后再继续执行修复。有关详细信息,请参见 Repairing a virtual disk in Fusion 3.1 and Workstation 7.1 (1023856)

  1. 确保相应虚拟机已关闭且未挂起。如果虚拟机已挂起,请参见 Fixing an unexpected signal 10 error in Fusion (1018757)
  2. 打开 Finder,导航到 /Applications/Utilities,然后打开终端
  3. 将以下行复制并粘贴到“终端”窗口中:

    • 如果使用的是 Fusion 4.x 或更高版本:

      sudo /Applications/VMware\ Fusion.app/Contents/Library/vmware-vdiskmanager -R

    • 如果使用的是 Fusion 3 或更低版本:

      sudo /Library/Application\ Support/VMware\ Fusion/vmware-vdiskmanager -R

    注意:如果命令末尾没有空格,请现在按一下空格。此外,请勿立即按 Enter,因为命令尚未完成。

  4. 在新的 Finder 窗口中,找到您的虚拟机包。有关详细信息,请参见 Locating the virtual machine bundle in VMware Fusion (1007599)
  5. 右键单击虚拟机包,然后选择显示软件包内容
  6. 找到错误消息中的 .vmdk 文件,将其拖到“终端”窗口中。这会将文件位置复制到已启动的命令中。“终端”中的命令类似于以下内容:

    • 如果使用的是 Fusion 4.x 或更高版本:

      sudo /Applications/VMware\ Fusion.app/Contents/Library/vmware-vdiskmanager -R /Users/yourusername/Documents/Virtual\ Machines.localized/Windows\ XP.vmwarevm/Windows\ XP.vmdk

    • 如果使用的是 Fusion 3 或更低版本:

      sudo /Library/Application\ Support/VMware\ Fusion/vmware-vdiskmanager -R /Users/yourusername/Documents/Virtual\ Machines.localized/Windows\ XP.vmwarevm/Windows\ XP.vmdk

  7. 出现提示时,输入管理员密码,然后按 Enter

    注意:出于安全原因,将不显示键入的密码。在接下来的五分钟内您不需要重新输入密码。

  8. 等待修复完成。显示一条消息,指示虚拟磁盘修复是否成功。在命令已运行后,将显示以下消息之一:

    • 无问题:虚拟磁盘(<磁盘位置>)上未找到任何问题
    • 问题已修复:虚拟磁盘(<磁盘路径>)已损坏,且已成功修复。
    • 无法修复:虚拟磁盘(<磁盘路径>)已损坏,但修复过程已失败。
    • 无法修复:无结果显示,因为磁盘文件损坏到如此程度以致 vdiskmanager 崩溃。

      注意:如果拥有任何快照,必须针对每个主磁盘(基础磁盘和主快照磁盘)重复步骤 6 和 7。有关详细信息,请参见 Contents of the virtual machine bundle in Fusion (1021016)

  9. 要从“终端”中退出,请转到终端 > 退出终端

如果修复已成功,请打开 Fusion 并启动虚拟机。如果修复失败,则需要从虚拟机的备份还原或创建新虚拟机。可在我们的以下视频演练中找到创建新虚拟机的步骤 VMware Fusion 3 Install Microsoft Windows on Your Mac


Additional Information

Repairing a sparse virtual disk in Fusion