Rsync并考虑名称/路径更改

约翰·琼斯

我维护着一个大文件夹,并且该文件夹定期与另一个文件夹rsync'sync在一起。

有时,我会在本地文件夹中更改名称,然后下次我rsync将文件发送至远程文件夹时,即使实际上唯一需要发送的是文件名已更改的信息,也需要发送整个文件。

有什么办法可以rsync弄清楚名称/路径的变化吗?

我在这里浏览了一下:http : //linux.die.net/man/1/rsync,找不到类似的东西。

你好

如果本地服务器和远程服务器都支持进行硬链接的功能,则可以使用此技巧来获得所需的内容。此博客文章中讨论了该方法,该文章标题为:使用Rsync检测文件移动和重命名

一般步骤

  1. 正常同步

    $ rsync -avHP --delete-after ~/family/Photos remotebox:backups
    
  2. 现在进行一些更改

    $ cd ~/family
    $ cp -rlp Photos Photos-work
    

    当cp的开关为cp时,它很快完成:以递归方式复制目录* R * + * L * ink文件,而不是复制+ * P *保留模式,所有权和时间戳(用于目录等非硬链接的内容)

    在“照片工作”目录中进行重组:您可以重命名,移动,添加和删除任何文件。但是,不要触摸此目录下的Photos(在两台计算机上具有相同的路径集)中的树,这将允许rsync快速找到要复制到远程计算机上Photos-work下的数据。

  3. 完成重组后,请运行以下命令:

    $ rsync -avHP --delete-after --no-inc-recursive ~/family/Photos ~/family/Photos-work remotebox:backups
    

    通过一次传输两个树并关闭增量递归,rsync会在传输任何内容之前收集所有硬链接。现在,它可以在几秒钟内在远程计算机上重建照片作品。接下来,您通过以下方式完成:

    $ mv Photos Photos-OLD
    $ mv Photos-work Photos
    

    您可以在本地和远程计算机上执行此操作。您可以将OLD目录保留很长时间,它使用的空间通常可以忽略不计。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

与MV,选择目标时,请考虑原始文件的路径/名称

来自分类Dev

回形针更改默认路径和哈希图像名称

来自分类Dev

如何更改/ media路径中的默认卷名称?

来自分类Dev

rsync模式匹配名称

来自分类Dev

分组依据未考虑更改

来自分类Dev

rsync 远程路径被读取为本地路径

来自分类Dev

Rsync不传输更改

来自分类Dev

我可以在GitLab中更改git路径名称的组部分吗?

来自分类Dev

Python:更改路径的一部分(单个目录名称)

来自分类Dev

如何在不更改路径的情况下在Go中配置二进制名称

来自分类Dev

MATLAB:根据计算机名称更改文件和脚本的路径

来自分类Dev

模板路径更改后如何通过VBA检索附加模板的名称

来自分类Dev

Python:更改路径的一部分(单个目录名称)

来自分类Dev

Jenkins-更改Build.xml的默认路径和名称

来自分类Dev

hash -p是否更改外部命令名称的路径名?

来自分类Dev

重新启动之前,新HD的路径正确,重新启动后,名称已更改

来自分类Dev

如何更改终端标题和提示路径以仅显示当前工作目录的名称?

来自分类Dev

使用php在链接单击时更改echo中的目录名称或路径

来自分类Dev

反应未考虑的本机捆绑包更改

来自分类Dev

VScode python扩展未考虑更改

来自分类Dev

Eclipse部署代码未考虑任何更改

来自分类Dev

Rsync新的和更改的文件

来自分类Dev

rsync复制已更改的文件

来自分类Dev

如何从 rsync 目标路径中删除 /Volume

来自分类Dev

不考虑在特定路径上写入的Firebase存储规则

来自分类Dev

通过矩阵的最佳路径,需要考虑多种成本

来自分类Dev

如何更改npm路径

来自分类Dev

在Linux中更改路径

来自分类Dev

更改离线绘图的路径

Related 相关文章

热门标签

归档