加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – rsync目录所以所有更改都以原子方式显示

发布时间:2020-12-13 17:25:24 所属栏目:Linux 来源:网络整理
导读:我为本地网络做了一些夜间和每周镜像常用的存储库.有些情况下,有人试图在rsync发生时进行更新并失败,因为预期的文件还不是全部. 是否可以执行rsync,以便所有更改的文件仅在完成时显示正确的名称?我知道rsync在每次传输过程中都使用临时的.hidden文件,但是我
我为本地网络做了一些夜间和每周镜像常用的存储库.有些情况下,有人试图在rsync发生时进行更新并失败,因为预期的文件还不是全部.

是否可以执行rsync,以便所有更改的文件仅在完成时显示正确的名称?我知道rsync在每次传输过程中都使用临时的.hidden文件,但是我可以推迟重命名直到它以某种方式完成吗?

或者,似乎我可以使用–backup选项将所有更改移动到一个目录并在之后以原子方式移动它们,但我希望该功能与现在的功能相反.

我在Linux上的价值.

解决方法

您可以使用–link-dest =选项.基本上你会创建一个新文件夹,所有文件都与新文件硬链接.完成所有操作后,您只需交换文件夹名称并删除旧名称即可.

因为没有内核/ VFS支持,所以在Linux中不可能这样做100%原子.但是,交换名称实际上只有2个系统调用,所以它应该在不到1秒的时间内完成它.只有在Darwin(MAC / OSX)上才能在HFS文件系统上调用swapata系统.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读