为什么这个 rsync 命令不删除目标目录中的文件

为什么这个 rsync 命令不删除目标目录中的文件
rsync -av --del ~/ /media/m/USB\ Stick/kopia/rsynclinux/

由于未知的原因,我生活在一种错误的印象中,一旦我从源的主目录中删除文件,该文件也会在目标中删除。

我不得不重新安装并恢复备份......才发现我错了。我现在有一堆令人难以置信的过时和重复的文件!

好吧,我不会回到过去进行适当的备份,相反,我会慢慢地、艰苦地整理我的旧笔记。

但至少我想以后避免再犯这样的错误。为什么这个调用rsync删除文件失败?

注意我读过这个:rsync 不会删除目标目录中的文件但正如你所看到的,我的调用rsync不包含通配符,所以两个问题并不相同

答案1

--del选项是 的别名--delete-during。您正在寻找的选项是--delete.

有一个关于不同选项的很好的总结:https://superuser.com/questions/156664/what-are-the-differences- Between-the-rsync-delete-options

答案2

如果/media/m/USB\ Stick/kopia/rsynclinux/是基于 FAT 或 NTFS 文件系统,则它无法存储从本机 Linux 文件系统复制的文件的所有属性(元数据)。这将触发rsync考虑复制文件时出错,并且--delete将被禁用。

从文档中,man rsync,下--delete(由--del或暗示--delete-during):

如果发送方检测到任何 I/O 错误,则将自动禁止删除目的地的任何文件。

相关内容