用于在远程共享之间复制文件的SMB协议

时间:2015-08-11 14:36:41

标签: windows robocopy smb

我需要将大量数据从远程共享\ s1复制到共享\ s2。我正在使用robocopy,它使用SMB协议来复制文件。我的问题 - 协议是否允许直接将数据从S1复制到S2,或者所有数据都必须通过运行robocopy的机器?

2 个答案:

答案 0 :(得分:1)

它使用它运行的机器。它将 source 中的数据复制到内存中(在当前计算机上 - 当前),然后从那里复制到 target 。没有别的方法(可以在 / 目标上运行客户端/服务器,并且可以远程配置客户端以直接打开隧道到服务器并传输文件 - 但这不是这里的情况。)

您可以尝试 robocopy 目标并使用任务管理器的大文件来检查这一点>监控网络流量:

  • 当前 - 传入+传出
  • 来源 - 传出
  • 目标 - 传入

并看到以下任何一个匹配(如预期的那样):

  • source - outgoing = target - incoming

还有这些(当前发挥作用):

  • source - outgoing = current - incoming
  • 当前 - outgoing = 目标 - 传入

直接执行 robocopy (或任何其他文件传输工具)必须在目标上运行。

答案 1 :(得分:0)

已知服务器端副本仅适用于同一共享中的{sub}目录;如果您正在考虑复制./between./ shares和可能跨服务器,那么它是您需要依赖的另一个功能转移;它被称为ODX,正如Harry Johnston所说,你需要相对较新的客户来利用这样的功能==>

https://blogs.technet.microsoft.com/askcore/2014/06/26/is-offloaded-data-transfers-odx-working/

[./。]“启动数据传输的计算机必须运行Windows Server 2012 R2,Windows Server 2012,Windows 8.1或Windows 8.”[。/.]

https://technet.microsoft.com/en-us/library/hh831628.aspx