首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >rsync --del或--删除

rsync --del或--删除
EN

Unix & Linux用户
提问于 2016-08-17 21:17:43
回答 1查看 7.9K关注 0票数 5

根据该手册:

-删除每个目录删除扫描都是在每个目录检查更新之前完成的,因此它的行为就像一个更高效的删除之前,包括在每个目录筛选器文件被更新之前进行删除。此选项首先在rsync版本2.6.4中添加。有关文件删除的更多细节,请参见--删除(这是隐含的)。

还有--delete-before--delete-after**。我不太明白这些和** --delete**之间的区别。** --delete什么时候删除文件,如果不是在之前、期间还是之后?

医生还说:

因此,当您指定--delete时,默认的delete模式是--delete--在连接两端至少为3.0.0期间(使用-del或-delete)显式请求这种改进的删除模式。

我想这意味着--del打算取代--delete**。是否有任何理由使用** --delete之上的--del**?使用** --del会导致小于3.0.0的连接出现问题吗?(我猜这是rsync版本)。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2016-08-18 00:33:27

使用--delete-after,该过程将发送所有需要添加/更改的文件,然后当完成时,它将删除所有不必要的文件。这可能很有用,因为这意味着目标始终拥有所有文件的副本;如果传输被中断,则不会丢失任何文件。但是,如果您正在传输大型文件(例如场外备份),那么您可能暂时需要更多的空间来同时保存旧文件和新文件。

使用--delete-before,进程将在传输开始之前删除文件;这意味着您不需要大量临时空间,但是如果传输被中断,则可能在远程端没有任何文件的副本。

使用--del--delete-during时,它将删除每个目录中的文件;这是一个介于前后之间的中间部分,而且效率更高;它部分受到“以前”的影响,但它仅限于一个目录(因此数据丢失的可能性更小)。

如果与服务器3.0.0或更高版本对话,--delete将默认为--delete-during,如果与旧版本对话,则默认为--delete-before。因此,我建议您只使用--delete,除非您有特定的调优需求。

票数 7
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/304075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档