这个问题让我们非常沮丧:当通过网络将大型 VHD(虚拟硬盘)文件从 Windows 7 计算机传输到我们数据中心的物理 Windows Server 2008 计算机时,Windows 文件传输始终在 4 GB 时失败。从我们的总部到我们的数据中心,我们有一个直接的 100 mbit 连接。
当传输失败时,我们收到的错误信息是:
There is a problem accessing \\server-name\d$
Make sure you are connected to the network and try again.
只有大于 4 GB 的 VHD 文件才会失败。如果我们发送任何其他文件类型,它工作正常。如果我们压缩 VHD,那也可以。此外,我们可以向另一个方向(从数据中心到总部)发送 VHD 没问题。它只是那个方向的 VHD 文件。
重要笔记:
- 所有分区都是 NTFS!!
- 工作站和服务器之间没有防火墙
- 我们已尝试在工作站上禁用防病毒软件(服务器上没有防病毒软件)
- 我们已尝试从不在域中的计算机传输文件
- 我们已经尝试从 Ubuntu 机器传输文件(仍然失败但大约 450MB 而不是 4GB)
- Wireshark 捕获在传输失败时显示 40 个 DUP ACK
- Xcopy 和 Robocopy(带有重启标志)都失败(同一点)
- FTP 传输在 4,14X,XXX,XXX 字节处失败,此时无法重新启动
- 我们尝试在发送之前将文件扩展名(愚蠢,但不得已)更改为 vhd 以外的其他名称,但仍然失败
- 连接如下:Dell Workstation (Main Office) -> Dell PowerConnect 5448 Managed Switch (MO) -> HP Procurve 2910al-24G Layer 3 Router (MO) -> 100Mb TLS link -> HP Procurve 2910al-24G Layer 3 Router (数据中心)-> Dell PowerConnect 5448 Managed Switch (DC) -> Dell Server (DC)
所以基本上,它只是 vhd 文件 > 4GB,从我们的总部到我们的数据中心失败了。这一切都没有加起来......在这一点上我认为这是我们的网络硬件设置的问题,但我不明白传输大型 VHD(失败,4GB)和传输之间的区别是什么大型视频文件(始终有效)。
经过数小时的故障排除(并尝试了此处发布的所有建议),结果证明问题出在我们的总部和数据中心之间的 TLS 链接上。我打电话给我们的 TLS 提供商,在与几位 NOC 技术人员交谈后,其中一位之前听说过确切的问题。事实证明,他们的某些第 2 层设备陈旧并且 VHD 数据存在问题。
解决方案是升级这些设备上的固件,由 TLS 提供商执行。我们现在可以毫无问题地传输大型 VHD。对于那些感兴趣的人,我们的 TLS 提供商是加拿大维多利亚州的 Shaw Communications。
试试 Xcopy 或 Robocopy;至少一个或两个都有一个“恢复”开关。Rsync 也可能有帮助。
出于好奇,一台机器是32位的,另一台是64位的吗?如果是这样,你能不能暂时用 64 位机器试试你的副本。
在 google 上搜索大文件网络复制失败,您会发现一些讨论类似问题的线程,而不仅仅是 vhd 的问题。通常会链接此知识库文章以查看调整 NIC 设置是否有帮助。TCP 卸载、烟囱设置等。
http://support.microsoft.com/kb/951037
嗯……我看到上面的各种答案,我意识到我仍然无法判断您是否真的尝试使用 64 位复制程序进行复制。(xcopy、robocopy 和大多数 FTP 客户端都是 32 位的,即使在 64 位 Windows 上也是如此。)
您可以尝试使用 64 位版本的 TotalCommander V8.0 吗?(它仍然是一个候选版本,但非常稳定。)那只是真正的 64 位版本。
如果服务器启用了 IPV6(通常在 W2K8 上启用),请尝试另一件事:在工作站上完全禁用 IPV4,以便副本必须使用 IPV6。看看这是否有所作为会很有趣。
如果以上都没有带来缓解....您总是可以使用 HJSplit(或 TotalCommander 的拆分功能)将文件拆分为 1GB 块,但当然您必须有一种在服务器上重新加入它们的方法。这将取决于您是否有权在服务器本身上运行程序。(如果您不允许在服务器端安装额外的软件,只需“copy /b chunk1+chunk2+chunk3 total.vhd”即可。)
只是想一想:虚拟机管理程序正在使用还是安装了 VHD?
它可能会失败,因为部分 VHD 被锁定并且无法从文件系统中读取。这就是压缩文件有效的原因,以及相同大小的视频文件也有效但 VHD 文件无效的原因。
在 Windows 中查找文件锁:
似乎有一个专家交流帖子有类似的问题。但是答案中没有解决方案。
这听起来甚至可能是权限问题,当您尝试将文件复制到网络位置时它会停止或失败,也许您可以尝试创建一个网络文件夹使其完全打开,这意味着共享给“所有人”组并在安全选项卡中设置这种方式。如果这解决了问题,那么它看起来像是一个权限问题,事实上,因为你提到 Linux 副本很快就失败了,看来权限可能是问题所在。确保 VHD 中的文件未在使用中,并且您具有访问它们的适当权限。
还要确保您从中复制的文件夹具有打开权限。请记住,这只是为了查看权限是否妨碍您,一旦您开始了解副本是否正常工作,您随时可以收紧它们。
另一件事,它可能是一个远景,但你有没有尝试更新 NIC 驱动程序?也许您机器的最新驱动程序中可能有修复程序。
我希望这会有所帮助,干杯