使用 rsync 备份到两个外部硬盘驱动器?

使用 rsync 备份到两个外部硬盘驱动器?

我有一个 8TB 硬盘来备份我的东西,并且 rsync 很容易。现在我的存储容量已超过 8TB,我又购买了一个 8TB 驱动器。

我的问题是,如何告诉 rsync 仅将不在第一个驱动器上的文件同步到第二个驱动器?

我尝试使用创建文件列表

cd /q/backup; find -type f > /oldbackup.txt

它创建一个看起来像的文件

./a/Dir/file1
./a/Dir/file2
./b/elsewhere/thing
./...
...

然后像这样使用它

rsync -rvu --delete --exclude-from=/oldbackup.txt /x/live/a /x/live/b /r/backup/

但 rsync 仍然被复制全部文件,似乎忽略了排除列表。

我该如何让它发挥作用?

另外,我的假设是否正确,即使它有效,它也会在新备份上留下很多空目录?

答案1

是的,问题(至少就我而言)似乎是两件事:

  • ./需要移除引线; rsync 期望以绝对方式或相对于源目录的方式指定排除。
  • 文字文件名需要根据正则表达式语法进行转义,以避免 rsync 尝试将它们解释为表达式。

是的,我确实得到了一堆空目录,但是删除空目录的脚本又是一次冒险。

相关内容