我正在尝试复制一个共享文件夹,其内容(文件夹和文件)是由第三方应用程序以无指定间隔创建的。我需要将这些文件复制到两个不同的服务器共享上。我设置的方式是在服务器启动时运行两个不同的 DOS 批处理文件。今天我遇到了一个问题,两个文件都停止工作了。我想知道是否有更有效的方法来在两个不同的共享文件夹上使用监视选项复制这些文件。
我设置了以下选项:/mon:1 /mot:15 /r:2000 /z /LOG+:\\MyPC\share\BACKUPLOG.txt /TEE
在批处理文件中,我在开始 gin 处添加了以下行,因此它可以工作,否则它只显示命令的循环并且从未真正运行:cd %windir%\system32\
答案1
我会采纳 George 的建议并执行 DFS-R。对于这类事情来说,它效率更高。但是,如果像我一样,您坚持使用 Robocopy,您可能只想向任务计划程序添加一次传递并以正常间隔运行它。(或在登录时,任务计划程序中也提供此功能)。这样,您就不会创建一个控制台窗口,如果中断,将完全破坏您的复制过程。在将其添加到计划程序时,您可以让它简单地复制新的更新。如果您将凭据保存到任务(任务的高级属性),则机器/VM 无需登录即可运行
我遇到的 /MON 选项问题是,写入数据的应用程序通常在 robocopy 变得贪婪并开始复制数据之前无法及时完成。当然,一旦写入完成,它就必须再次复制。运行一次然后“大部分”退出就解决了我的问题。争用仍然可能发生在运行过程中,但至少您没有创建竞争条件。
将任务计划程序设置为 5 分钟,并让它每天 24 小时每 5 分钟重复一次。但这当然会增加源服务器的额外负载,因为每次扫描时都必须扫描文件夹以查看发生了什么变化。YMMV