此问题最初是在 IBM x3650 上遇到的,该集群中有一台 IBM x3550 用于故障转移,但此问题在运行 HyperV 但不属于集群的服务器上可重现。当我尝试使用服务器备份实用程序从 VM 内部运行基于 VM 的备份到 E: 驱动器(这是附加的 vhdx 文件)时。它失败并出现此错误
备份无法完成。存储位置上没有足够的磁盘空间来创建卷影副本。请确保对于要备份的所有卷,都有创建卷影副本所需的最小磁盘空间。这适用于备份存储目标和备份中包含的卷。最低要求:对于小于 500 兆字节的卷,最小可用空间为 50 兆字节。对于大于 500 兆字节的卷,最小可用空间为 320 兆字节。建议:如果卷大小超过 1 GB,则每个卷至少有 1 GB 的可用磁盘空间。详细错误:存储空间不足以创建卷影副本存储文件或其他卷影副本数据。
在事件查看器中我看到此错误
EventID:521 开始于“TIME”的备份操作失败,因为卷影复制服务操作无法创建正在备份的卷的卷影副本,错误代码为“0x80780119”。请查看事件详细信息以找到解决方案,然后在问题解决后重新运行备份操作。
在使用我们的服务器批量许可证副本投入生产之前,使用 Server 2012 R2 MSDN 副本的测试设置中没有发生此问题。因此,作为测试,我在运行 HyperV 的主机 (MSDN) 服务器上安装了两个虚拟机,一个虚拟机使用我们的 MSDN 副本,另一个使用我们的服务器批量许可证副本,安装非常简单,安装 Windows 备份,将 VHDx 文件附加为 E: dive 并尝试裸机备份。MSDN 副本能够执行裸机备份。批量许可证副本失败,出现上述错误。
有其他人遇到过这个问题吗?或者您知道在哪里可以查看阻止备份完成的两个虚拟机之间的差异吗?
编辑:
此后,我在两台不同的服务器上验证了这一点,安装了 MSDN 版 Server 2012 R2 副本的虚拟机可以用于裸机备份,安装了购买的批量许可证版 Server 2012 R2 副本的虚拟机不适用于裸机备份,服务器上还有另一条无法执行裸机备份的信息,它可以正常备份 C: 驱动器,直到我点击裸机备份时它才失败。
我发现这个帖子与我的问题类似,但是当我尝试他的修复并试图恢复虚拟机时,Windows PE 系统映像恢复说找不到要恢复的映像。 https://superuser.com/questions/663782/windows-8-1-insufficient-storage-available-to-create-shadow-copy
答案1
我将回答自己的问题,希望它能帮助其他人。问题与 Windows 尝试备份恢复卷有关,如果您希望能够进行完整备份以便执行完整的裸机恢复,它必须这样做。该卷没有运行 VSS 备份所需的 50MB 可用空间,因此失败了。我最终不得不在 C 的末尾创建一个 500MB 的小卷以用于额外的空间,并使用 vssadmin Add ShadowStorage 命令告诉它使用额外的空间。您可以在下面阅读更多详细信息,并在此处查看 technet 论坛上更详细讨论的链接
http://social.technet.microsoft.com/Forums/windowsserver/en-US/7373a7b8-01c8-4e2b-aaaa-513b7dad56f4/windows-server-2012-r2-vm-back-up-fails-with-insufficient-storage-available-to-create-either-the?forum=windowsbackup#8aaa04ec-9a89-4599-80aa-b15c5d09651d
通过测试,我发现磁盘管理单元显示恢复卷上有大量可用空间,但事实并非如此。我运行了 powershell 命令 Get-Volume,它显示了测试虚拟机中恢复卷的以下内容。我还使用 diskpart 为恢复驱动器分配了一个驱动器号,这样我就可以看到它的内容
使用 MSDN 安装了 HyperV VM Gen 2,恢复卷大小:300MB,可用空间:59.83MB,Winre.wim 文件大小:215MB,备份工作在此。
HyperV VM Gen 2 安装了批量许可证副本恢复卷大小:300MB、可用空间:30.24MB、Winre.wim 文件大小:243MB,此次备份失败。
HyperV VM Gen 1 安装了批量许可证副本系统保留(又名恢复)卷大小:350MB,可用空间:61.07MB,Winre.wim 文件大小:243MB 备份工作在此。
如您所见,MSDN 副本有一个较小的 winre.wim 文件,它允许可用空间超过 50MB,因此您不会收到此错误“对于小于 500 兆字节的卷,最小可用空间为 50 兆字节。”
当安装到 Gen 1 VM 时,批量许可证副本会生成更大的恢复驱动器,因此可用空间超过 50MB,但是它无法在 Gen 2 VM 上执行此操作,并且备份会失败,这是一个错误吗?另一个小信息是两个服务器 2012 ISO 文件之间的文件大小差异约为 28MB,这正是两个不同的 winre.wim 文件之间的差异。
为了暂时解决这个问题,我将较小的 winre.wim 文件从 MSDN VM 复制到批量许可 VM,并且备份可以正常工作,甚至可以进行完整的恢复,但此时我用来进行映像恢复的批量许可 ISO 将其较大的 winre.wim 文件放回去,备份再次失败,新恢复的 VM。
我也尝试了 vssadmin resize shadowStorage 命令,但它不接受卷 ID,所以我不得不为它们分配一个驱动器号并将其大小设置为无界,但备份仍然失败。
然后我终于发现,如果我将 C 盘缩小 512MB 并创建一个新分区,并使用以下命令向其中添加影子存储,S 被映射到恢复卷 vssadmin 添加 ShadowStorage /For=S: /On=F: /MaxSize=UNBOUNDED 备份有效!!
最后备份可以正常工作,但是恢复新的 VM 映像后,添加的 ShadowStorage Map 会丢失,必须重新创建备份才能再次工作。虽然不是很好的解决方案,但总比没有好。现在我的问题是,MS 会很快发布针对此问题的修补程序吗?
谢谢克里斯
答案2
以下是 Windows 团队建议的解决方法。
- 禁用 WinRE(打开提升的命令提示符并运行:“reagentc /disable”)
- 进行系统映像备份
- 启用 WinRE(打开提升的命令提示符并运行:“reagentc /enable”)
答案3
我在使用 Windows Server 2012 R2 VM 时遇到了问题,我的解决方案是在 Wndows 设置中手动创建系统文件:在 HD 选择窗口中按 shift-F10,然后输入。
磁盘分区
选择磁盘 0
创建零件主要尺寸=300
创建部件 efi 大小=300
出口
然后在 HP 的空闲部分安装 Windows,准备好的分区将用于系统。
我从以下网址收集了有关如何执行此操作的信息:
答案4
就我而言,我发现系统保留分区已满,这导致了问题,因为 Windows 备份正在将其用作临时存储区域。我的系统保留分区为 500Mb,相当大。
答案 1. 使用计算机管理 | 磁盘管理 GUI 将驱动器号映射到系统保留分区 2. 打开资源管理器并导航到映射的驱动器号 3. 在我的系统上,我发现 C_ 目录占用了大量空间。 4. 我将其复制到另一个驱动器,然后删除了原始文件 5. 再次运行备份,这次成功了