将 rsync 限制到目标上的可用空间

将 rsync 限制到目标上的可用空间

我有一个目录/data/snapshots,我想将其存档到安装在的外部驱动器上/mnt。外部驱动器是 2TB,/data/snapshots更大。

如果我:

rysnc -av /data/snapshot /mnt

rsync然后,一旦外部驱动器已满,命令就会失败。问题是,一旦安装了新的空驱动器,我就无法继续。

目前看来我有两个选择:

  • 生成一个 2TB 大小的文件列表,然后使用 rsync 迭代这些文件。这似乎不必要地繁琐且容易出错。
  • 而是使用: rsync --remove-source-files -av /data/snapshot /mnt

希望这是一个已解决的问题并且有人可以给我指出解决方案。

编辑:为了简化请求,我希望--quantity 1.9tb在 rsync 中有一个选项。

答案1

试试这个怎么样:

  1. 使用获取所有文件列表以及使用的磁盘空间量

  2. 拆分文件列表.txt分成更小的列表(列表1.txt列表2.txt等),每个总计 2TB

  3. 跑步rsync --files-from对于每个列表,在换入一个空的 2TB 驱动器后

相关内容