问题
我们希望将关键文件从多个网络共享备份到可移动硬盘驱动器.我们希望自动备份,因此我们不必记住运行它.它需要在一夜之间完成.此外,我们希望能够保留每个文件的多个版本,以便我们可以更轻松地退出用户的错误.
背景资料
我在一个基于Windows的大型企业中工作,该企业具有负责所有备份的集中IT部门.他们的备份适用于灾难恢复而非用户错误,并且需要上级管理部门批准任何非灾难恢复.有几次我们注意到我们的备份失败了,我们没有得到通知.我没有服务器或桌面的管理权限.我们正在尝试备份大约198千兆字节的198,000个文件.这些文件很少改变.我们的备份驱动器是一兆兆字节.
我建议的解决方案
我想要做的是使用带有/ mir选项的Robocopy以及Mercurial SCM编写批处理文件来存储该文件的所有版本.我会在每次执行Robocopy之前执行hg add后跟hg提交以保存当前状态,然后创建文件结构的镜像副本.问题是/ mir将删除源中不存在的每个文件夹,Mercurial将存储库存储在目标文件夹中的.hg文件夹中.
有没有人知道如何说服Mercurial将.hg文件夹存储在别处,或者说服Robocopy不要将其从目的地删除?
我试图避免编写自定义程序来复制.
要在忽略某些文件扩展名的情况下执行镜像,请尝试以下操作:
原文链接:https://www.f2er.com/windows/367943.htmlrobocopy c:\temp\source c:\temp\dest /e /purge /xf *.hg
我在这里测试了一下它似乎只留下.hg文件在目的地
我还建议使用/ z标志(对于大文件可重新启动),并且在处理具有不同时间粒度的服务器时不得不求助于/ fft标志:http://www.readynas.com/forum/viewtopic.php?t=3573
编辑:
…我上面的例子是假设名为* .hg …的文件做同样的事情并忽略名为* .hg的目录,使用这个:
robocopy c:\temp\source c:\temp\dest /e /z /purge /xd *.hg